본문 바로가기

정보처리산업기사 필기 공부/응용SW기초기술활용

네트워크 프로토콜 파악(응용SW기초기술활용)

 

네트워크 프로토콜 개요

네트워크 프로토콜은 컴퓨터와 원거리 통신 장비 사이에서 메시지를 주고받는 양식과 규칙의 체계이다. 통신 규약 또는 규칙에는 전달 방식, 통신 방식, 자료의 형식, 오류 검증 방식, 코드 변환 규칙, 전송 속도 등을 정하게 된다. 다른 기종의 장비는 각기 다른 통신 규약을 사용하는데 프로토콜을 사용하면 다른 기기 간 정보의 전달을 표준화할 수 있다. 프로토콜은 다음과 같은 특징이 있다.

 

단편화 - 전송이 가능한 작은 블록으로 나누어지는 것

재조립 - 단편화되어 온 조각들을 원래 데이터로 복원하는 것

캡슐화 - 상위 계측의 데이터에 각종 정보를 추가하여 하위 계층으로 보내는 것

연결 제어 - 데이터의 전송량이나 속도를 제어하는 것

오류 제어 - 전송 중 잃어버리는 데이터나 오류가 발생한 데이터를 검증하는 것

동기화 - 송신과 수신 측의 시점을 맞추는 것

다중화 - 하나의 통신 회선에 여러 기기들이 접속할 수 있는 기술

주소 지정 - 송신과 수신지의 주소를 부여하여 정확한 데이터를 전송 보장하는 것

 

IP주소는 전 세계 컴퓨터에 부여되는 유일한 식별자이다. IP는 각 나라의 공인 기관에서 할당하고 관리하는데, 우리나라의 경우에는 한국인터넷진흥원에서 관리한다.

IPv4는 인터넷 초기부터 현재까지 쓰고 있는 주소 체계이며 000.000.000.000과 같이 12자리로 표시하며 약 43억 개를 부여할 수 있다. 최근에는 디바이스 증가로 IPv4가 가진 주소의 양이 부족할 수 있어 IPv6를 공표하였다.

2018년 현재는 IPv4와 IPv6가 공존하며 두 개의 주소 체계를 변환하여 사용하고 있으며 이를 담당하는 것을 NAT(Network Address Translator)라고 한다. IPv6는 이전 버전에 비하여 효율적인 패킷을 처리하고 보안이 강화된 특징이 있다.

 

 

 

 

TCP/IP 프로토콜

TCP/IP이란 TCP와 IP 프로토콜만을 지칭하는 것이 아니라 UDP, ICMP, RARP 등 관련된 프로토콜을 통칭한다. TCP와 UDP로 구분되는 프로토콜은 트랜스포트 계층에서 응용 계층과 인터넷 계층 사이의 통신을 담당한다.

TCP와 UDP의 가장 큰 차이점은 데이터 전송의 신뢰성에 있다. TCP는 수신 측의 수신 가능 상태, 수신 여부 등을 단계별로 체크해 가며 데이터를 전송하는 반면, UDP는 망으로 데이터를 송신할 뿐 확인 작업을 수행하지 않는다.

 

1.TCP(Transmission Control Protocol)

 - CRC 체크와 재전송 기능을 통해 신뢰성 있는 전송을 확보한다.

 - Flow COntrol 기능을 수행하여 단계별 데이터 전송 상황을 체크한다.

 - 논리적인 1:1 가상 회선을 지원하여 해당 경로로만 데이터가 전달되도록 한다.

 - 대표 서비스 : FTP, Telnet, Http, SMTP, POP, IMAP 등

 

2. UDP(User Datagram Protocol)

 - 연결되어 있어도 데이터를 송신할 수 있다. 단, 수신측의 수신 여부는 확인하기 어렵다.

 - Flow Control, Error Control을 하지않아 신뢰성 있는 데이터 전송에는 부적합하다.

 - 하나의 송신 정보를 다수의 인원이 수신해야 할 경우 UDP를 사용한다.

 - 대표 서비스 : SNMP, DNS, TFTP, NFS, NETVLOS, 인터넷 게임/방송/증권 등

 

3. TCP/UCP의 헤더 구조

 위와 같은 프로토콜의 차이는 헤더의 구조에 잘 나타나 있다.

 - 송/ 수신자 포트번호 : 송신 - 수신 프로세스에 할당되는 포트 주소

 - 순서 번호 : 송신자가 전하는 데이터 전송 순서

 - 응답 번호 : 제대로 수신했는지 여부를 수신자 측으로부터 전달받음.

 - 데이터 오프셋 : 헤더의 크기

 - 예약 필드 : 다른 사용 목적으로 확보된 필드로 실제 사용 안 함.

 - 윈도 크기 : 수신 윈도의 버퍼 크기 지정

 - Checksum : 헤더와 데이터의 오류 검출

 - 긴급 위치 : 긴급 데이터 처리용

 - 제어 비트 : 긴급 필드 설정, 응답 번호 유효 여부 등 체크