티스토리 뷰

- TCP/IP는 네트워크를 상호 연결시켜 정보를 전송할 수 있도록 하는 기능을 가진 다수의 프로토콜이 모여 있는 프로토콜의 집합 - TC/IP의 가장 대표적인 프로토콜은 3계층의 IP와 4계층의 TC로 대부분의 응용서비스가 TCP상에서 이루어지나, 최근 인터넷의 단점을 보완하기 위해 UDP를 적극적으로 이용하는 추세임

I. TCP/IP의 개념(Transmission Control Protocol / Internet Protocol)의 개요

 가. TCP/IP 정의

  • TCP/IP는 네트워크를 상호 연결시켜 정보를 전송할 수 있도록 하는 기능을 가진 다수의 프로토콜이 모여 있는 프로토콜의 집합
  • TC/IP의 가장 대표적인 프로토콜은 3계층의 IP와 4계층의 TC로 대부분의 응용서비스가 TCP상에서 이루어지나, 최근 인터넷의 단점을 보완하기 위해 UDP를 적극적으로 이용하는 추세임

 

 나. TCP/IP 특징

  • 독립적: Hardware, Operaing System, 물리적 Network에 무관한 전송규약
  • 전세계의 유일한 주소체계 확립

 

 다. TCP/IP의 표준화 이점

  • 네트워크의 변화와 서비스유형에 따라 다양한 프로토콜을 동시에 허용
  • 표준규격이 실증에 기초하고 있음
  • 표준규격과 표준화의 과정이 RFC(Request for Comments;인터넷 표준화기구[IETF]에서 전세계적으로 인터넷의 표준으로 정의된 문서)형태로 개방되어 있음

 

II. TCP/IP 개념 모델 및 OSI 모델과의 비교

 가. TCP/IP 모델

  •  OSI 모델과 달리 4개의 Layer들로 구성되어 있으며, 실제로 많이 사용되고 있는 기술을 바탕으로 OSI 7계층의 복잡성을 4계층으로   단순화 시킨 모델
  •  TCP/IP는 3,4계층을 중심으로 한 통신프로토콜의 계층 집합
  •  ARP(Address Resolution Protocol): IP주소를 물리적 하드웨어 주소로 자동적으로 변환하는 프로토콜
  •  ICMP(Internet Control Management Protocol) : IP계층을 이용해서 에러메시지 교환이나 다른 중요한 정보를 다른 호스트나 라우   터의 IP층과 교환(예, PING)
  •  IGMP(Internet Group Management Protocol) : 복수의 호스트에 UDP 데이터그램을 송신하는 멀티캐스팅에 이용되는 프로토콜

 

 나. TCP/IP 모델과 OSI 모델의 비교

항목

OSI 모델

TCP/IP 모델

계층

- 7계층 구조

- 4계층 구조

구현

- 모델을 만들고 실제 구현을 진행함

- 이미 실제로 구현된 기술을 바탕으로 만듦

문제점

- 너무 복잡하여 여러 계층에 중복된 기능이 존재함

- 프로토콜간의 경계나 기능들이 확실히 구분되어 있지 않음

공통점

- 두 모델 모두 계층적 구조를 가짐

- 다양한 서비스를 가진 응용프로그램 계층이 존재함

- 트랜스포트 계층/네트워크 계층과 호환되는 계층이 존재함

- 패킷 스위칭 기술을 기반으로 함

차이점

- TCP/IP 프로토콜은 인터넷 표준이며 높은 신뢰성 보장

- 현실 네트워크는 구체적인 OSI 프로토콜로 만들어지지 않음

 

III. TCP(Transport Layer Protocol) &  UDP(User Datagram Protocol) 비교

구분

TCP

UDP

정의

3, 4 계층의 통신 프로토콜 집합으로 연결지향적 (Connection Oriented) 설정을 제공하는 프로토콜

제어용 메시지 처리나 빠른 응답을 요구하는 응용서비스를 위하여 비연결형(Connectless) 설정을 제공하는 프로토콜

데이터순서

보내는 순서를 유지함

순서를 유지하지 않음

데이터중복

데이터 중복, 손실 없음

데이터 중복, 손실 가능

에러제어

헤더 및 데이터에 대한 에러 검사 후 에러시 재전송

헤더 및 데이터에 대한 에러 검사 후 에러시 재전송 하지 않음

흐름제어

슬라이딩 윈도우 사용

흐름제어 없음

개념도

 

 

종류

Telnet, FTP, SMTP

SNMP, TFTP

장점

신뢰성 있는 경로 확립

메시지전송 감독

메시지를 세그먼트로 분할 전송

단순한 헤더

방송용 동영상 정보전송

멀티캐스트용 MBone

메시지 블록단위 전송

단점

전송에러 계속 감시

손실시 재전송

간단한 에러검사 기능

안전전송 여부확인 못함

 

IV. TC Three-Way Handshake[TCP 연결 구조]

 가. TCP/IP 연결시 3-way Handshake

  •  Client는 접속하고자 하는 서버의 포트번호와 클라이언트의 초기순서번호(Init Sequence Number)를 지정한 SYN 세그먼트를 전송
  •  서버는 서버의 초기순서번호(ISN)를 포함한 자신의 SYN세그먼트로 응답, 또 서버는 클라이언트의 ISN + 1 ACK를 보냄으로써 클라이언트의 SYN에 확인 응답
  •  클라이언트는 서버로부터 보내온 SYN에 대하여 서버의 ISN + 1 ACK로 확인응답을 전송
  •  위 3개의 세그먼트에 의해 연결이 설정되며 이것을 Three-way Handshake라 부름

 

 나. TCP/IP 연결해지시 4-way Handshake

 

V. IP의 개요 및 구조와 주요기능

 가. IP(Internet Protocol)의 정의

  •  Subnet과 무관하게 데이터 패킷을 임의의 host 사이에서 주고 받기 위한 프로토콜로 패킷 별 경로 선택

 

 나. IP의 특징

  •  가상회선서비스 제공이 안되기 때문에 항상 32bit IP address를 포함
  •  OSI 네트워크 계층에서의 흐름제어, 오류제어 같은 기능 없음

 

 다.  IP Header 의 주요 구조

IPv4

IPv6

 

 라. IPv4 Header의 주요 기능

종류

내용

1.version(4)

IP header의 형식을 나타냄: IPv4, IPv6

2.Header length(4)

32bit로 헤더의 길이를 표시

3.Type of Service(8)

우선권, 지연시간, 처리능력, 신뢰성등 바람직한 QoS를 네트워크에 알려줌

4.Total length(16)

byte단위의 IP헤더와 데이터 길이를 표현

5.Ideltification(16)

각 datagram마다 고유하게 설정되는 datagram번호

6.Flag(3)

IP datagram의 단편화 유무

7.Fragment offset(13)

단편화 되기 전 datagram,처음에서부터의 상대적인 위치 기록

8.Time to Live(TTL)(8)

네트워크에서 IP datagram이 활동할 수 있는 최대 시간

9.Protocol(8)

IP데이터를 수신할 상위 계층 프로토콜, ICMP, IGMP, TCP, UDP

10.Header Checksum

오류탐지 bit

 

VI. TCP/IP 통신 기능

 가. Listen()

  - 클라이언트 요청이 올 때까지 대기하는 Passive Socket

 

 나. Accept()

  - 클라이언트의 요청을 수락하여 Active Socket mapping

 

 다. Connect()

  - 클라이언트에서 생성된 Active Socket과 서버측의 Passive Socket을 서로 연결

 

 라. Slow-Start단계(완만한 출발)

  - 망 내에 존재하는 패킷의 수가 과도하게 증가되는 현상을 혼잡(congestion)이라고 정의하며 혼잡현상을 방지하거나 제거하는 기능   을 혼잡제어(congestion control)라고 한다. Slow-Start는 패킷을 저장하는 중간 라우터의 저장할 버퍼 공간의 부족으로 데이터 전송   의 문제가 생기는 것.

 

VII. IP Address Schema

 가. IP 주소의 정의

  - 인터넷의 수 많은 호스트들을 각각 구분할 수 있도록 각 호스트마다 유일한 4바이트의 정수 값을 할당 하는데, 이것을 인터넷주소   또는 IP주소라고 부름

 

 나. I P 주소의 특징

  - 32bit 이진수를 각각 8bit씩 4부분으로 나누고 각 부분을 점(.)으로 구분하여 10진수로 표시

  - NIC(Network Information Center)에서 할당 관리함.

  - 실제 사용시에는 문자주소(Domain Name)을 사용하고 DNS를 통하여 IP주소로 변환됨

 

 다. IPv4의 주소 클래스 주소

  - Network-ID 는 네트워크 그룹이 달라서, 라우팅을 해야하며 Net-ID가 같은 경우에는 라우팅 기능 필요 없음

  - 클래스 A는 7비트의 net-id와 24비트(256.256.256)개의 host-id로 나누어져 있음

  - 클래스 B는 중간크기의 네트워크에서 사용

  - 클래스 C는 대부분의 기업에서 사용(xxx.xxx.xxx.23)

  - 클래스 D는 224.x.x.x 로 시작하는 IP주소를 클래스 D주소라고 부름, 멀티캐스트 전송용으로 사용


댓글