1. Protocol Layering (프로토콜 계층화)
많은 네트워크 프로토콜은 계층구조(e.g. TCP/IP 5계층, OSI 7계층 등)를 이루고 있다. 만일 네트워크 프로토콜이 이러한 계층구조를 이루고 있지 않다면 어떨까?
1) 단일 계층 프로토콜
위와 같은 프로토콜이 있다고 가정해보자. Maria와 Ann은 인사를 하거나 대화만 수행하면 된다. 이렇게 간단한 작업의 경우 굳이 계층화된 프로토콜이 필요하지 않다.
2) 3계층 프로토콜
Maria와 Ann은 멀리 떨어져있기 때문에 Mail로 대화를 주고받아야하고, 정보 유출을 대비하여 암호화/복호화를 수행해야한다. 첫번째로 Maria와 Ann이 Layer3에 평서문으로 대화할 메시지를 보내면 Layer2는 평서문을 받아서 암호화/복호화하고 Layer1는 그 자료를 메일로 상대방에게 전송한다. 이렇게 복잡한 일련의 작업이 필요할때는 작업을 순서대로 계층화하여 계층별로 모듈화하여 구현한다.
2. 프로토콜 계층화의 필요성
-
복잡한 작업을 여러개의 작고 단순한 작업들로 쪼갠다
-
각 작업을 모듈화할 수 있다. (다른 계층을 생각하지 않고 구현)
-
입력과 출력의 형태만 정의하고 내부는 Black Box로 구현 가능하다
-
같은 입력에 같은 출력을 제공할 수 있다 (시스템 호환 → 표준화)
-
소프트웨어 구현과 크게 다르지 않다. (계층화는 곧 모듈화이다!)
3. 프로토콜 계층화의 원칙 (중요)
1) 양방향 통신이라면, 각 계층이 상반되는 기능을 수행해야한다. (e.g. 말하기/듣기, 암호화/복호화)
2) 각 계층에서 통신되는 객체의 형식은 동일해야함 (e.g. Layer1 : 평서문, Layer 2 : 암호문)
4. Reference
'네트워크' 카테고리의 다른 글
네트워크 모델 (6) - User / Signaling 데이터 (0) | 2020.04.10 |
---|---|
네트워크 모델 (5) - OSI 7 계층 모델 (0) | 2020.02.16 |
네트워크 모델 (4) - 캡슐화, 주소, 다중화 (Encapsulation , Addressing, Multiplexing) (0) | 2020.02.16 |
네트워크 모델 (3) - TCP/IP 프로토콜 훑어보기 (2) (0) | 2020.01.31 |
네트워크 모델 (2) - TCP/IP 프로토콜 훑어보기 (1) (0) | 2020.01.30 |
네트워크 개요 (0) | 2020.01.18 |
데이터 통신 개요 (1) | 2020.01.09 |