독립적인 두 개 이상의 시스템이 서로 정보를 교환하기 위해서는 사전에 정의된 약속인 프로토콜이 필요하다. 즉, 프로토콜이란 컴퓨터와 컴퓨터가 정보를 주고받을 수 있기 위한 규칙 및 약속의 모음이다. 프로토콜은 전달하고자 하는 내용을 담는 일정한 형식과 전송 절차, 신호 규격 등을 내용으로 하고 있다. 이에 따라 다양한 프로토콜들이 존재하지만 프로토콜을 구성하는 공통적인 내용을 크게 나누면 다음과 같다.
◆ Fragmentation & Reassembly
송/수신되는 테이터를 형식에 맞게 나누고 다시 재결합한다.
◆ Error Detection & Correction
송/수신되는 테이터에 에러가 발생하는지를 감시하고 정정한다.
◆ Data Flow Control
테이터의 흐름을 조절한다.
◆ Multiplexing(다중화)
하나의 채널에 여러 신호를 동시에 전송한다.
보통의 경우 각 기능별로 모듈화 되어 있고, 각 모듈간의 신호 전달 과정도 약속되어 있다. 컴퓨터 통신 프로토콜 중 대표적인 것이 국제 표준화 기구인 ISO(International Standardization Organization)에서 채택된 OSI(Open Systems Interconnection) 프로토콜과 현재 널리 사용되고 있는 TCP/IP(Transmission Control Protocol/Internet Protocol) 프로토콜이다.
OSI 프로토콜 모델은 국제 표준화가 되어있지만 이론적이고 개념적인 면이 강하여 실제 컴퓨터 통신용 프로토콜로는 TCP/IP 모델이 주로 사용되고 있다.
(1) OSI 7 계층 참조 모델
OSI는 Open Systems Interconnection의 약자로서 개방형 시스템간의 상호 접속 규약이다. 개방형 시스템이란 정해진 규약을 만족하는 모든 시스템을 말한다. 즉, 어떤 제조업체에서 생산되었던지 표준화된 규약만 만족시킨다면, 서로 다른 장비일지라도 상호 통신이 가능하다는 의미이다.
OSI에서는 그림 1.1 처럼 컴퓨터 S/W, H/W 및 유무선망을 기능별로 분리하여 모두 7 개의 계층으로 나누어 생각하였다. 각 계층은 독립적인 기능을 가지고있으며, 계층 간에 정보를 주고받는 절차를 정의함으로써 사용자는 계층별로 다른 제조업체의 제품을 사용할 수도 있다. 이렇게 모듈화한 가장 큰 장점은 각 부분의 기술이 독립적으로 깊게 발전할 수 있게 하며, 사용자는 모듈별 교체가 가능하여 관리의 효율을 높일 수 있다.
계층 | 계 층 명 | 담 당 역 활 |
7 | 응용 계층 | 응용 프로그램(응용 프로세스)으로 구성되며 사용자와 하위 계층의 정보를 교환하는 역할을 담당한다. FTP, TELNET, Web Browser. |
6 | 표현 계층 | 정보의 코드 변환을 담당한다. 즉, 사용자가 이해하는 코드로의 변환과 통신에 적합한 코드로의 변환을 담당한다. MIME 타입이라고 보거나 ASCII 코드라고 보면 된다. |
5 | 세션 계층 | 정보가 흐르는 채널을 생성/유지/폐쇄한다. HTTP에서는 Session id로 표시된다. |
4 | 트랜스포트 계층 | 네트워크 계층에서 전달된 정보를 어느 세션으로 전달할지를 결정하며 네트워크 계층으로는 정보를 전송하며 이러한 정보가 정확히 전달되었는지를 감시한다. |
3 | 네트워크 계층 | 주로 정보가 전달될 주소를 찾고 수신된 정보를 트랜스포트 계층으로 전송한다. 라우터 장비가 L3장비이며, L3 스위치허브(경로설정이 가능한 스위칭 허브)도 있다. |
2 | 데이터 링크 계층 | 인접 장치 사이로 정보를 전송하는 역할을 담당한다. 상위 계층에서 전달된 전송 대상의 주소를 실제 물리 주소(MAC 어드레스)로 변환하여 데이터를 전송한다. 스위치와 브리지가 대표적인 L2장비이다. |
1 | 물리 계층 | 전송 트랜시버(전기 신호를 발생/수신하는 장치)와 전송 매체로 구성된다. 대표적 장비로는 허브와 리피터가 있다. |
(2) TCP/IP 모델
TCP/IP 모델은 OSI 7 레이어 모델보다 더 현실적이다. OSI 7 레이어 모델이 컴퓨터 통신을 위한 프로토콜을 레이어 개념을 도입하여 설명하기 위해 만들었다면, TCP/IP 모델은 물리적으로 떨어진 각 단말이 인터넷을 통하여 정보를 교환할 수 있도록 만든 실물의 프로토콜이기 때문이다.
계층 | 계 층 명 | 담 당 역 활 |
4 | 응용 계층 | 응용 프로그램(응용 프로세스)으로 구성되며 사용자와 하위 계층의 정보를 교환하는 역할을 담당한다. FTP, TELNET, Web Browser. |
3 | 트랜스포트 계층 | 하위 계층에서 전달된 정보를 어느 응용프로그램으로 전달할지를 결정하며 하위 계층으로는 상위에서 온 정보를 전송하며 이러한 정보가 정확히 전달되었는지를 감시한다. |
2 | 인터넷 계층 | IP 주소체계를 가지면서 동작한다. 즉, 정보가 전달될 주소를 찾고 수신된 정보를 트랜스포트 계층으로 전송한다. |
1 | 네트워크 계층 네트워크 엑세스 계층 네트워크 인터페이스 계층 |
인접 장치 사이로 정보를 전송하는 역할을 담당한다. 상위 계층에서 전달된 전송 대상의 주소를 실제 물리 주소(MAC 어드레스)로 변환하여 데이터를 전송한다. 그리고 이러한 데이터의 전송을 위한 트랜시버(전기 신호를 발생/수신하는 장치)와 전송 매체로 구성된다. 그림 1.1 (b)에서는 OSI 7 레이어 모델과의 비교를 위해서 Network와 Physical 레이어로 구분하여 표시하였을 뿐 TCP/IP 모델에서는 이 2개의 레이어를 하나로 합쳐서 본다. |
OSI 7 레이어 모델에서는 제 3계층이 네트워크 계층이라고 불특정한 네트워크를 아우르는 이름을 가졌지만, TCP/IP 모델에서는 이를 인터넷 계층이라고 명확하게 특정한 이름을 지정한 것에 유의할 필요가 있다.
(3) 테이터 캡슐화
계층 구조에서 자기 보다 상위의 데이터는 데이터 캡슐화(Encapsulation)를 통하여 그 하부로 전달된다. 즉, 각 계층에서는 계층마다 자신이 담당한 기능을 처리하기 위한 정보(헤더(Header))를 만들어 이를 데이터 또는 데이터 꾸러미의 머리부분에 덧붙여 하부의 계층에 전송한다는 의미이다.
이 헤더 정보는 다른 계층에서는 패스되며 임의의 노드(호스트) A의 n 계층의 정보는 또 다른 노드(호스트) B의 같은 n 계층에서만 해독되므로 같은 계층들은 Peer(대응) 관계에 있다고 이야기한다.
특정 예를 들면, 사용자가 자신의 신체 정보를 Application Layer의 Application Program을 통해서 입력하면 이 정보는 데이터라 할 수 있다. 이런 데이터는 Transport Layer에 전달되며, 이 레이어에서는 TH(Transport Header)를 덧붙여서 내려보낸다. 다시 Internet Layer는 IH(Internet Header)를, 그리고 Network Layer는 NH(Network Header)를 덧 붙여 Physical Layer상으로 전송함을 볼 수 있다.
그리고 이러한 정보는 수신 노드의 각 계층에서 헤더부분을 참조, 제거한 후 상위 계층으로 데이터 꾸러미를 전송하여 최종적으로 Application Layer 상으로 완전 무결한 데이터를 전송할 수 있게 된다.
'네트워크 개요' 카테고리의 다른 글
2.1 Ethernet의 정의 (0) | 2020.01.23 |
---|---|
1.5 LAN 카드와 LAN 케이블 (0) | 2020.01.23 |
1.4 TCP/IP (0) | 2020.01.23 |
1.2 컴퓨터 네트워크의 구분 (0) | 2020.01.23 |
1.1 네트워크 일반 (0) | 2020.01.23 |