Protocol Layering
프로토콜은 송신자와 수신자 또는 디바이스들 사이에서 효과적으로 통신을 할 수 있게하는 규칙이다.
통신이 간단하면 하나의 프로토콜이 필요하지만, 통신이 복잡하다면 각 층마다 프로토콜이 필요할 것이다.
이를 프로토콜 계층화(Protocol Layer)라고한다.
프로토콜 계층화를 사용하면 복잡한 작업들을 작고 간단한 작업들로 나누는 것을 가능하게 한다.
계층화를 사용하지 않는다면 암호화/복호화 방식을 바꿔야한다면 전체를 바꿔야할 것이다. 하지만 암호화/복호화 만을 담당하는 계층을 만든다면 다른 계층들은 신경쓸 필요가 없어진 것이다.
=> 모듈화(Modularity) 라고한다.
Advantage of Protocol Layering
- 서비스와 구현을 분리시켜준다. 계층은 하위 계층으로부터 일련의 서비스를 받아 상위 계층에게 서비스를 제공할 수 있게된다.
- 각 계층이 어떻게 구현되는지 신경쓰지 않아도 된다.
- 중간에 있는 시스템(Switch, Router)만 여러 계층을 필요로 하지만, 모든 계층을 사용하지 않는다.
Disadvantage of Protocol Layering
- 단일계층이 일들을 더 쉽게 만든다고 주장하기도 한다. 상위계층과 하위계층에 서비스를 제공하지 않아도 되기 때문이다.
- 하지만, 유지 보수시 전체를 교체해야하므로 효율이 좋지 않다.
Logical Connection
각 계층 사이에 논리적 통로(Logical connection)이 있다고 본다.
TCP/IP
TCP/IP는 오늘날 인터넷에서 사용되는 프로토콜이다. 이것은 상호작용하는 모듈로 구체적인 기능을 제공하는 계층적인 프로토콜이다.
*계층화: 상위 프로토콜은 하위 프로토콜에 의해 supported된다는 의미
위 사진에서 Router부분에서는 데이터가 올때 내가 받아야할 주소면 상위주소로 올려주지만 내 주소가 아니면 목적지를 보고 어디로 가면 좋을지 이어주는 역할을 한다.
물리 계층(Physical Layer)
- 이 계층은 구조화 되지않은 데이터가 물리적 매체를 통해 전송되고 수신되는 방식을 제어한다.
데이터 링크 계층(Data Link Layer)
- 데이터그램을 가져와 링크를 통해 이동한다.
- 링크는 유선 LAN, 무선 LAN, 유선 WAN 무선 WAN일 수도 있다.
- 모든 링크 타입에 대해 다양한 프로토콜을 사용한다.
- 데이터그램을 캡슐화하고 프레임이라고하는 패킷에 넣는다.
- 링크 계층에서 에러를 찾고 수정하는 기능도 제공한다.
네트워크 계층(Network Layer)
- 전송 컴퓨터와 도착할 컴퓨터 사이에 연결을 생성한다.
- 전송부터 수신까지의 경로에는 다양한 라우터들이 있기 때문에 라우터는 각 패킷을 가장 좋은 경로를 선택해야 한다.
- 호스트 간 통신과 가능한 경로를 통해 패킷을 보내야한다.
전송 계층(Transport Layer)
- 전송 계층에서의 logical connection은 end-to-end 이다.
- 전송 계층에서의 프로토콜은 그것의 요구와 가장 매치되는 프로토콜을 사용한다.
- 에러를 제어하고 흐름을 제어한다.
응용 계층(Application Layer)
- 두 응용 계층사이에서의 logical connection은 end-to-end 이다.
- 두 프로세스 간에 이루어진다.
Encapsulation and Decapsulation
프로토콜 계층화에서 중요한 개념중 하나는 캡슐화와 역캡슐화이다.
프로토콜 계층화에서 또다른 중요한 개념은 Addressing이다.
각 계층마다 주소가 필요하므로 5가지의 주소가 필요할 것 같지만 물리 계층에서는 주소를 필요로 하지 않기 때문에
4가지의 주소만 가지고 있다. 왜냐면, 물리 계층에서의 데이터 교환은 비트(bit)로 이루어지기 때문이다.
TCP/IP 프로토콜은 여러 계층에서 여러 프로토콜을 사용하기 때문에 출발지에서 다중화(Multiplexing)하고 도착지에서
역다중화(Demultiplexing)한다.
Multiplexing : 한 계층에서 프로토콜이 상위 계층의 프로토콜에서 한 번에 하나씩 패킷을 캡슐화 함을 의미한다.
Demultiplexing : 프로토콜이 패킷을 역캡슐화하고 다음 상위계층으로 한 번에 하나씩 전달할 수 있음을 의미한다.
OSI Model
두 시스템이 시스템 아래에있는 구조에 상관없이 통신을 가능하게하는 일련의 프로토콜이다.
원래 TCP/IP 계층에서 Session과 Presentation이 추가된 계층이다. 하지만 이미 TCP/IP가 널리 사용되고 있어서 바꾸는데 비용이 많이 들어 사용하지 않는다.
'🖥️ Computer Science > Data communication' 카테고리의 다른 글
[데이터 통신] Error Detection 과 Correction (0) | 2024.04.16 |
---|---|
[데이터 통신] 아날로그 전송 (1) | 2024.04.13 |
[데이터 통신] 디지털 전송 (2) | 2024.04.07 |
[데이터 통신] 물리 계층 (0) | 2024.04.07 |
[데이터 통신] 데이터 통신과 네트워크 (0) | 2024.03.15 |