본문 바로가기

Learning/└◆Security Section

[네트워크 이론]OSI 7 Layer & TCP/IP 5 Layer

네트워크(Network) 이론

- OSI 7 Layer & TCP/IP 5 Layer

 

03_네트워크이론.hwp

 

 

 

1

개요(Overview)

 

 

(1) 표준화와 네트워크 표준 기구(Networking Standards Organizations)

 

표준화(Standard)

기술적인 특성 또는 명확한 표준의 보장을 포함하여 승인된 내용을 문서화 하는것이다.

특정 제품 또는 특정 서비스가 설계되고 수행된다.(최소 허용 성능을 정의)

많은 서로 다른 조직들이 컴퓨터 산업 표준을 이끌어 내고 있다.

 

(2) 패킷(Packet)

 

(2.1) 네트워크 통신에서 패킷의 기능

네트워크는 데이터를 작고 더욱 관리하기 용이한 조각으로 재 형성시키는데 이러한 작은 조각을 패킷 또는 프레임이라고 부른다.

데이터를 분할해서 사용하는 경우의 장점- 데이터 포화상태의 네트워크 대용량 데이터 전송을 보다 효율적으로 제공할 수 있다.- 보다 많은 컴퓨터들이 네트워크를 사용할 수 있다.- 고속의 데이터를 전송하는 측면에서 단지 데이터 전체가 아니라 에러를 포함 패킷만 재전송하여 효율성을 높일수 있다.

 

(2.2) 패킷의 구조

기본적인 구조

헤더(Header)전송 동기화를 위한 클럭 정보를 포함한 소스와 목적이 주소를 가지고 있다.

데이터(Data)페이로드(Payload) 또는 동적 데이터로서 512 bytes ~ 16 KBytes

트레일러(Trailer)CRC(Cyclic Redundancy Check)처럼 패킷의 내용을 입증하는 정보

 

(3) 프로토콜(Protocol)

 

(3.1) 프로토콜의 이해

 

네트워크 통신을 위한 규약과 처리절차

통신을 위해서 컴퓨터는 프로토콜 기준을 맞추어야 한다.

프로토콜 형태- 비접속 지향형(Connectionless)- 접속 지향형(Connection-Oriented)- 라우팅형(Routable)- 비라우팅형(Nonroutable)

 

(3.2) 프로토콜의 기능

 

각각의 모든 프로토콜은 서로 다른 기능과 목적을 가진다.

프로토콜은 1계층 내지 그 이상의 계층에서 동작한다.

프로토콜 스택 또는 프로토콜 슈트는 협력하여 동작하기 위한 프로토콜의 묶음이다.

대다수 공통적인 프로토콜 스택은 TCP/IP이고 인터넷을 위한 거의 대다수 운영체제에서 사용된다.

 

 

 

 

 

 

2

OSI 7 Layer(OSI 7 Model)

 

 

OSI 7 Layer(OSI 7 Model)

 

OSI(Open Systems Interconnection) Model국제 표준화 기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명하고 있다.

계층(Layer)의 종류

- 물리적 계층(Physical Layer)

- 데이터링크 계층(Datalink Layer)

- 네트워크 계층(Network Layer)

- 전송 계층(Transport Layer)

- 세션 계층(Session Layer)

- 프레젠테이션 계층(Presentation Layer)

- 응용 계층(Application Layer)

각 계층에서 독립적인 프로토콜이 동작한다.

이 모델은 프로토콜을 기능별로 나눈것이다.

일반적으로 하위 계층은 하드웨어로 상위 계층은 소프트웨어로 구현된다.

 

  1. 1계층 - 물리 계층(Physical Layer)
    시스템을 연결하기 위한 전기/물리적 규격을 정의하고 데이터가 0과 1로 변환이 되어 보내진다.
    단순히 한 컴퓨터로부터 다른 컴퓨터로 비트를(데이터) 전송만 해주는 역할을 한다.
    (패시브 허브, 단순 액티브허브, 연결자, 케이블, 커넥터, 전송기, 수신기, 송수신기)

  2. 2계층 - 데이터링크 계층(Date Link Layer)
    물리적 링크를 통해 데이터 링크를 신뢰성 있게 전송하고 데이터 링크 계층에서는 비트를 프레임이라는 논리적 데이터 단위로 구성
    MAC주소를 가지고 통신을 할 수 있게 한다.
    두가지 하위 계층이 존재한다.
    - Logical Link Control 통신 장치간의 연결을 설정하고 관리하는 책임
    - Media Access Control 다중 장치가 같은 미디어 채널을 공유하는 제어(Block ID + Device ID)

  3. 3계층 - 네트워크 계층(Network Layer)
    논리적인 주소를 물리적인 주소로 번역한다.
    데이터를 목적지 까지 가장 안전하고 빠르게 전달하는 기능을 담당한다.
    데이터를 패킷 단위로 분할하여 전송하고 다시 합치는 작업을 한다.
    논리적으로 독립된 네트워크간 통신을 유지하는 역할
    회로, 메세지, 패킷 교환, 라우트 발견과 라우트 선택, 접속 서비스, 네트워크 계층 플로우 컨트롤,
    네트워크 계층의 에러제어, 패킷 순서 관리

  4. 4계층 - 전송 계층(Transport Layer)
    TCP/UDP 프로토콜과 관련된 계층, 두 시스템 간 신뢰성 있는 데이터 전송을 보장 하기위한 여러 규격을 제공한다.
    (패킷이 차례로 손실이나 중복 및 에러 없이 전송되는 것을 보장)
    커다란 메세지를 세션 계층으로 부터 목적지 컴퓨터에 전송되는 작은 패킷으로 쪼개고 세션 계층에 나타나는 메세지로 패킷을 다시 조합
    (Fragmentation & Reassembly)
    시퀀스 넘버 기반의 오류 제어 방식을 사용한다.

  5. 5계층 - 세션 계층(Session Layer)
    PC와 PC가 연결되었을때 최종적으로 소프트웨어끼리 통신하게 되는데 소프트웨어 통신을 관리하기 위한 규격 제공
    TCP/IP가 세션 계층에 속한다.
    분리된 컴퓨터 상에서 애플리케이션 세션이라는 연결을 공유하는 것을 허용한다.
    통신하는 두 프로세스간 대화를 제어하고, 통신 중에 어느 지점에서 전송을 하고 누가 수신을 할 것인지를 결정
    데이터 동기화와 네트워크오류 이벤트 검사, 오류가 발생한 지점 이후의 데이터만 재전송 보장

  6. 6계층 - 표현 계층(Presentation Layer)
    송수신 측 두곳의 데이터를 포현하는 형식의 차이를 해결하기 위함/ 서로 다른 형식을 변환해주거나 공통 형식을 제공
    네트워크가 요구하는 포맷과 컴퓨터가 요구로하는 포맷간 데이터를 번역
    - 프로토콜 전환
    - 데이터 전환
    - 압축과 암호화
    - 문자집합 변환
    - 그래픽 명령어의 해석

  7. 7계층 - 응용 계층(Application Layer)
    응용 프로그램들 간 전달되는 데이터를 해석하고 표시하기 위한 규격 제공
    (SMTP, FTP, SNMP, HTTP, API..)

     

[!]전송, 세션, 프레젠테이션 3가지 계층의 기능과 차이점

4계층 전송 - 투명한 데이터 전송 양방향, 신뢰성(TCP/UDP 프로토콜)
5계층 세션 - 응용프로그램 계층 사이의 접속을 설정하고 유지하고 종료

6계층 표현 - 서로 다른 형식을 변환/번역 및 암호화

   

 

 

3

TCP/IP 5 Layer(TCP/IP Model)

 

 

(1) TCP/IP 모델(TCP/IP 5 Layer) 개요

 

TCP/IP -> Transport ~ Internet

TCP,IDP ,ICMP,IGMP, IPv4,IPv6,ARP,RARP

 

 

 

 

(2) TCP/IP 모델이란?

 

TCP/IP[티씨피 아이피]는 인터넷의 기본적인 통신 프로토콜로서, 인트라넷이나 엑스트라넷과 같은 사설 망에서도 사용된다. 사용자가 인터넷에 접속하기 위해 자신의 컴퓨터를 설정할때 TCP/IP 프로그램이 설치되며, 이를 통하여 역시 같은 TCP/IP 프로토콜을 쓰고 있는 다른 컴퓨터 사용자와 메시지를 주고받거나, 또는 정보를 얻을 수 있게된다.

컴퓨터 간의 통신을 위해 미국 국방부에서 개발한 통신 프로토콜, TCPIP를 조합한 것. TCP/IP는 현재 인터넷에서 사용되는 통신 프로토콜로, 통신 프로토콜이 통일됨에 따라 세계 어느 지역의 어떤 기종과도 정보를 교환할 수 있다. RFC 형태로 공개되고 있고, 유닉스에서는 표준 프로토콜로 내장되어 있으며, 거의 모든 운영 체계에서 구현되고 있으므로 널리 보급되어 있다. OSI 기본 참조 모델을 기준으로 하면 제3계층과 제4계층에 해당한다. 인터넷에서 경로 제어를 하며 종단 간 신뢰성이 높은 통신을 실현하고 있다. TCP IP2가지 통신 규약만을 가리키는 것이 아니라 관련되는 모든 프로토콜을 총칭하는 경우가 많다.

 

TCP/IP2개의 계층으로 이루어진 프로그램이다. 상위계층인 TCP는 메시지나 파일들을 좀더 작은 패킷으로 나누어 인터넷을 통해 전송하는 일과, 수신된 패킷들을 원래의 메시지로 재조립하는 일을 담당한다. 하위계층, IP는 각 패킷의 주소 부분을 처리함으로써, 패킷들이 목적지에 정확하게 도달할 수 있게 한다. 네트웍 상의 각 게이트웨이는 메시지를 어느 곳으로 전달해야 할지를 알기 위해, 메시지의 주소를 확인한다. 한 메시지가 여러 개의 패킷으로 나뉘어진 경우 각 패킷들은 서로 다른 경로를 통해 전달될 수 있으며, 그것들은 최종 목적지에서 재조립된다.

TCP/IP는 통신하는데 있어 클라이언트/서버 모델을 사용하는데, 컴퓨터 사용자(클라이언트)의 요구에 대응하여, 네트웍 상의 다른 컴퓨터(서버)가 웹 페이지를 보내는 식의 서비스를 제공한다. TCP/IP는 본래 점대점 통신을 하는데, 이는 각 통신이 네트웍 상의 한점(또는 호스트 컴퓨터)으로부터 시작되어, 다른 점 또는 호스트 컴퓨터로 전달된다는 것을 의미한다.

TCP/IPTCP/IP를 이용하는 상위계층의 응용프로그램들은 모두 "커넥션리스 (connection-less)"라고 불리는데, 이는 각 클라이언트의 요구가 이전에 했던 어떠한 요구와도 무관한 새로운 요구로 간주된다는 것을 의미한다 (일상적인 전화통화가 통화시간 내내 지속적으로 연결되어 있어야 하는 것과는 다르다). 커넥션리스는 네트웍을 독점하지 않으므로, 모든 사람들이 그 경로를 끊임없이 공동으로 사용할 수 있게 한다 (사실 TCP 계층 그 자체는 어떤 한 메시지가 관계되어 있는 한 커넥션리스가 아니라는데 유의해야 한다. TCP 접속은 어떤 한 메시지에 속하는 모든 패킷들이 수신될 때까지 계속 유지된다). 많은 인터넷 사용자들이 TCP/IP를 이용하는 상위계층 응용프로토콜에 대해서는 잘 알고 있다. 이러한 상위계층 프로토콜에는 웹서비스에 사용되는 HTTP를 비롯하여, 멀리 떨어져 있는 원격지의 컴퓨터에 로그온할 수 있게 해주는 Telnet, 그리고 파일전송에 사용되는 FTP와 메일 전송에 사용되는 SMTP 등이 있다. 이러한 프로토콜들은 종종 TCP/IP와 함께 패키지로 일괄 판매된다.

PC 사용자들은 보통 인터넷에 접속하기 위해 SLIP이나 PPP 프로토콜을 사용한다. 이러한 프로토콜들은 다이얼업 전화접속을 통해 접속서비스사업자의 모뎀으로 보내질 수 있도록 IP 패킷들을 캡슐화한다.

TCP/IP와 관련이 있는 프로토콜로 UDP가 있는데, 이것은 특별한 목적을 위해 TCP 대신에 사용되는 것이다. 라우팅 정보를 교환하기 위해 네트웍 호스트 컴퓨터에 의해 사용되는 프로토콜에는 ICMP, IGP, EGP, 그리고 BGP 등이 있다.

 

 

[참고] IAB, RFC, IETF

IAB(Internet Architecture Board)

1983, 인터넷 기술 개발을 하면 테스트하여 표준화 할 수 있는가를 판단하는 기관

RFCs(Request for Comments)

문서를 만드는 기관

IETF(Internet Engineering Task Force)

IPv4, IPv6 개발(http://www.ietf.org)

 

[참고] RFC(Request for Comments) 문서 검색 방법

http://www.ietf.org/rfc.html

http://www.ietf.org/rfc/rfcNNNN.txt (NNNN is RFC number)

 

 

[참고] TCP/IP ISO/OSI 비교

ISO/OSI 참조 모델(Reference Model, 1980) 7 Layer

TCP/IP 모델(1979) 5 Layer

 

OSI Model(OSI 7 Layer)

TCP/IP Model(TCP/IP 5 Layer)

Application Layer

Application Layer

- TELNET, FTP, DHCP, TFTP, HTTP, SMTP, SNMP, DNS

Presentation Layer

Session Layer

Transport Layer

Transport Layer

- TCP, UDP

Network Layer

Internet Layer

- ICMP, IGMP, IPv4, IPv6, ARP, RARP

Data Link Layer

Network Interface Layer

Physical Layer

Physical Layer

 

 

 

(3). TCP/IP Model 구성

 

TCP/IP 모델은 Application, Trasport, Internet, Network Interface, H/W 계층으로 구분 된다. Application 계층에서 생성되는 데이터를 메세지(Messages)라고 한다. Transport 계층에서 생성되는 데이터는 세그먼트/데이터그램(Segment/Datagram)라고 한다. 세그먼트/데이터그램은 상위 계층에서 내려오는 메세지에 Transport 헤더(Header)를 덧 붙이게 된다. 만약 TCP Header를 붙이게 되면 TCP Segment 라고 부르고, UDP Header가 붙게 되면 UDP Datagram이라고 부른다. Transport Header에 들어 가는 중요한 정보는 Port 번호(출발지/목적지)이다. Internet 계층의 데이터는 데이터그램이라고 하고, 상위해서 내려오는 세그먼트/데이터그램을 최대전송단위(MTU, Maximum Transfer Unix)로 쪼개어서 각각에 헤더를 붙이게 된다. Internet Header에 들어가는 중요한 정보는 IP(출발지/목적지)이다. Network Interface 계층에서 생성되는 데이터를 Packet/Frame이라고 하고, 상위에서 내려오는 데이터그램에 헤더(Header)와 테일(Tail)를 붙이게 된다. Network Interface 계층의 Header에 들어가는 중요한 정보는 MAC(출발지/목적지)주소이다. Network Interface 계층의 Tail 부분에 붙는 정보를 CRC 코드라고 한다. 이 코드를 통해 패킷(또는 프레임)의 데이터 통신상의 무결성을 점검하게 된다. Hardware 계층에서 생성되는 데이터를 Signal/Bits라고 부르고, 상위의 Packet/Framebits로 환산하여 전송하게 된다. 상대방 호스트는 이 패킷을 받게 되면 역으로 데이트를 복원하는 과정을 수행한다.

 

 

Application Layer

Transport Layer

Internet Layer

Network Interface Layer

Hardware Layer

 

|--------------------|

| Application        |         Mesg.    Mesg.             Domain Addr.

|--------------------|

| Transport          |       H+Mesg.    Segment/Datagram  Port Addr.   2Bytes

|--------------------|

| Internet           |     H+Segment    IP Datagram        IP Addr.    4Bytes

|--------------------|

| Network Interface  |  H+Datagram+T    Packet/Frame       MAC Addr.   6Bytes

|--------------------|

| Hardware           |                  Signal/bits

|--------------------|

 

[그림] 각 계층의 생성 데이터이름과 헤더의 중요한 정보

 

* T = CRC : 체크섬 프로그램

 

Mesg -> FTP mget시 전송되는 하나하나의 각 파일

Transportheader -> Segment

Datagram

 

 

 

 

Application - FTP, telnet, DNS.

 

Transport - TCP UDP

 

Internet - ICMP, IGMP IP(v4/v6) ARP, RARP

 

Network Interface -Ethernet

 

Hardware - Hardware(UTP CAT 5e)

 

 

 

[그림] 각 계층 프로토콜의 예

 

 

 

 

 

(3-1) 네트워크 인터페이스 계층(Network Interface Layer)

 

물리적인 네트워크를 통한 데이터 통신 제어

에러 검출 기능(Detecting errors) :

패킷의 프레임화(Faming packets) :

 

Important Information : MAC

Layer Function

    - Flow Control(흐름제어) => Header(MAC)

    - Error Control(에러제어) => Tailer(CRC)

 

CRC = 외부의 방해로 인한 변조를 검사하고 확인한다.

 

[참고] Network Interface Layer Protocol

H/W 분류: Ethernet, Token Ling, ATM, FDDI, ...

S/W 분류: SLIP, PPP

 

[참고] IEEE Identifiers

IEEE 802.3 - Ethernet standards

---------------------------------

IEEE 802.4 - Token bus standards

IEEE 802.5 - Token ring standards

 

 

 

 

 

 

(3-2) 인터넷 계층(Internet Layer)

 

패킷 분할 및 재 조립(Fragmenting and reassembly of data)

데이터 라우팅(Routing data)

Important Information : IP

Layer Function

- Routing => Header(IP)

- Fragmentation & Reassembly => 송신(Fragmentation), 수신(Reassembly)

 

인터넷 계층 프로토콜 설명(Internet Layer Protocol Description)

RFC

Protocol

Description

826

ARP

Address Resolution Protocol

903

RARP

Reverse Address Resolution Protocol

791,950,919,922

IP

Internet protocol

792

ICMP

Internet Control Message Protocol

2401,

2406,

2402,

2407,

2408

IPSec

Internet Protocol Security Architecture

Encapsulating Security Payload(ESP)

Internet IP security domain of interpretation for the Internet

Security Association and Key management Protocol(ISAKMP)

ISAKMP

 

 

 

 

(3-3) 전송 계층(Transport Layer)

 

응답 신호(Acknowledgement responses)

순서(Sequencing)

흐름 제어(Flow Control)

Important Information : port

Layer Function

- Flow Control(흐름제어) => (TCP) Sliding Window(송신) / Congestion Window(수신)

- 혼잡제어 : 수신측에서 수신 받을 수 있는 데이터만을 조절 하는 기능

- Error Control => (TCP) ACK

전송 계층 프로토콜 설명(Transport Layer Protocol Description)

RFC

Protocol

Description

793

TCP

Transmission Control Protocol

768

UDP

User Datagram Protocol

 

 

 

TCP 기능

흐름제어

송신 버퍼공간     수신 버퍼공간

수신 할수 있는 양보다 많은 양의 송신이 올때

수신 버퍼공간에 임시 저장하여 수신할 수 있는 만큼 꺼내서 작업

 

에러제어

ACK = 전송받은 상태를 반대로 다시 보내는 응답신호

ACK가 되돌아오지 않으면 재전송

 

각 헤더의 주요 기능

1 .TCP 헤더 분석 (TCP는 양방향성 입니다.)

 

TCP패킷

 

○ Source / Destination Port Number ( 각 16 비트) 

1.source port (출바지 포트) : 종류에 따라 출발지 포트가 정해져 있는 것도 있지만 대부분의 경우 처음 세그먼트를 전송하는 측에서 임의의 번호를 사용 합니다.

(client port, 1024~ 이상의 port 사용)

2.destination port(목적지 포트) : 종류에 따라 처음 세그먼트를 전송하는 측에서 사용하는 목적지 포트가 정해져 있습니다.

예를 들어서 웹으로 접근하는 프로토콜은 80번 입니다. (Well-know port 1~1023)

 

○ Sequnce Number(순서번호 32비트)

  • TCP 세그먼트의 순서번호를 표시 합니다. 통신을 시작하는 양단의 장비들이 별개로 임의의 번호부터 시작합니다.
  • 0~43억 순서제어 가능
  • TCP 각 세그먼트의 첫번째 바이트에 부여되는 번호 (바이트 단위로 구분되는 번호임)
  • 32 비트이므로 최대 4기가 바이트 크기의 (232) 의송신
  • 데이터에 순서화된 일련번호를 붙일 수 있음

○ Acknowledgement Number (확인응답번호) (32비트) –

수신하기를 기대하는 다음 바이트 번호 = ( 마지막 수신 성공 번호 +1)

상대방이 보낸 세그먼트를 잘 받았다는 것을 알려주기 위한 번호 입니다.

 

 

○ 헤더 길이 필드 (Header length,HLEN, 4비트)

– 4 바이트 단위로 표시, 따라서 TCP 헤더 길이는 최소 20바이트 총 60바이트(3way-handshake 절차 협상에 사용) 이하

○ 6개의 Flag bits (URG,ACK,PSH,RST,SYN,FIN) – TCP 세그먼트 전달과 관련되어 TCP 회선 및 데이터 관리 제어 기능을 하는 플래그

흐름제어, 연결설정, 연결종료, 연결리셋, 데이터 전송모드

○ 윈도우 크기(Window size, 16비트)

-흐름제어를 위해 사용하는 16비트 필드 (65,535 byte까지 가능)

TCP 흐름제어를 위해 통신의 상대편에게 자신의 버퍼 여유용량 크기를 지속적으로 통보하여주는 기능을 함.

– 수신측에 의해 능동적으로 흐름제어를 수행하게 됨 ○ Checksum (16비트) : 헤더와 데이터의 에러를 확인 하기 위한 필드 입니다.

○ Urgent Pointer (16비트) – TCP 세그먼트에 포함된 긴급 데이터의 마지막 바이트에 대한 일련번호 입니다.

현재 일련번호(sequence number)로 부터 긴급 데이터까지의 바이트 오프셋 (offset) 해당 세그먼트의 일련번호에 urgent point 값을 더해 긴급 데이터의 끝을 알수있음

○ 옵션 – 최대 40바이트까지 옵션 데이터 포함 가능.

TCP MMS 옵션을 협상 하거나, 타임스탬프 옵션정의, 최대 세그먼트 사이즈 지정 등 추가적인 옵션이 있을 경우 표시 합니다.

 

2. UDP 헤더 분석

udp 의 경우 신뢰성이 낮은 프로토콜로써 완전성을 보증하지 않으나, 유연하며 효율적 응용의 데이타 전송에 사용 합니다.

UDP

  •  발신 포트 번호 (source port 16비트) : TCP 와 동일
  • 수신 포트 번호 (destination port 16비트) : TCP 와 동일
  • 패킷 전체 길이 : 헤더와 데이터를 포함한 바이트 단위의 길이. 최소값 8 (헤더만 포함될 때)
  • 체크섬 : 선택 항목, 헤더와 데이터의 에러를 확인 하기 위한필드  (체크섬 값이 0이면 수신측은 체크섬 계산 안함)

3. UDP 주요 기능 및 특징

○ 비 연결성이고, 신뢰성이 없으며, 순서화 되지 않은 데이타그램 서비스 제공

  • data 가 제대로 도착했는지 확인하지 않음 ( 확인응답 없음)
  • 수신된 패킷의 순서를 맞추지 않음 (순서제어 없음)
  • 흐름 제어를 위한 피드백을 제공하지 않음 (흐름제어 없음)
  • udp를 사용하는 프로그램 쪽에서 오류제어 기능을 스스로 갖추어야 합니다.

○ 빠른 요청과 응답이 필요한 응용에 적합

실시간!! 응용 등에 사용

 ○ 헤더가 단순함

  • udp 는 tcp 처럼 16비트의 포트 번호를 사용
  • 헤더는 고정크기의 8바이트 (TCP는 20바이트) 만 사용
  • 즉 헤더처리에 많은 시간과 노력을 요하지 않는다

○ udp 위에서 동작되는 프로토콜 또는 응용분야

  – TFTP, SNMP, DHCP, DNS, RIP 등

○ 최대 데이터 크기

 

 – 65,507바이트 = 65,535 바이트 – udp 헤더 8바이트 – ip 헤더 20바이트

 

 

 

(3-4) 애플리케이션 계층(Application Layer)

 

The Application layer handles the details of the particular application.

The primary functions of this layer are:

Formating Data - Data is formatted based on a computer's architecture.

Presenting Data - If end users specify how they want their data presented to them.

Transporting Data - The Application layer stipulates a transfer syntax.

애플리케이션 계층 프로토콜(Many Application Layer Protocols)

telnet

FTP(File Transfer Protocol)

SNMP(Simple Network Management Protocol)

SMTP(Simple Mail Transfer Protocol)

DHCP(Dynamic Host Configuration Protocol)

DNS(Domain Name System)

NIS(Network Information Service)

NFS(Network Filesystem)

SSH(Secure Shell)

SCP(Secure Copy)

etc

 

 

 

[정리] TCP/IP 5계층

 

계층화된 구조를 가질 경우 기능에 따라 각 계층이 독립적으로 동작하므로 복잡한 프로토콜을 거대한 독립체 하나로 구성하는

것 보다 구현이 수월하고 설계-이상이 있을 시 오류를 찾아내기 쉽다.

 

새로운 기능을 추가할 경우 특성에 따라 게층을 선택하여 추가할 수 있어서 기존에 존재하는 프로토콜에 영향을 끼치지 않는다.

 

즉, 네트워크의 계층적 모델은 한 계층이 한 작업만 수행하고, 각 게층은 다른 계층에 대해서 독립적이며, 각 계층이 송신측과

수신측에 모두 존재한다.

 

1. Application

FTP, TELNET, SNMP, SMTP, NFS, DNS, HTTP, POP3..등등

 

2. Transport

TCP/IP를 사용하는 시스템들 사이에서 어떤 방법으로 데이터를 전송할 것인지 정의하고

데이터 트래픽에 따라 데이터 흐름의 양을 제어하고, 제대로 전송 되었는지도 확인

어플리케이션 계층에 존재하는 여러 어플리케이션을 구별하기 위한 용도로 포트를 사용

두 시스템 사이 실제적인 전송에 대한 제어 담당.

TCP - segment

UDP - Datagram

 

3. Internet

데이터의 조각화(Fragmentation), 재조립(Reassembly), 경로설정(Routing)

자신과 다른 시스템을 구별할 수 있는 32비트의 P주소 존재

Fragmentation은 덩치가 큰 데이터를 작은 조각 여러 개로 나누어서 데이터 전송을 용이하게 하는 것이며, 네트워크 인터페이스

MTU에 의해 결정

 

4. Network Interface

오류를 검출하고 패킷을 구조화

이더넷, ATM, FDDI, 토큰링, PPP, SLIP등

MAC(Media Access control Address)

-> 네트워크 인터페이스 계층에 정의된 모든 프로토콜

네트워크 인터페이스 계층에서 주고받는 데이터를 PDU(Packet Data Unit)라 한다.

 

5. Hardware

네트워크 인터페이스 카드에 들어오는 모든 신호를 네트워크 인터페이스 계층이 인식할 수 있는 데이터로 변환