OSI 7 Layer , TCP/IP 4 Layer
- ( OSI : Open Systsem Interconnection reference model )
- 국제 표준화 기구(ISO)가 정의한 네트워크 통신 모델
L4 응용 계층 / 메시지(Message)
- HTTP / FTP를 담당하는 계층입니다.
- 서버나 클라이언트 응용 프로그램이 이 계층에서 동작합니다.
- 우리가 알고 있는 브라우저나 텔넷 같은 서비스가 이 계층에 동작합니다.
DNS (Domain Name System) : 인터넷에서 사용하는 이름을 해당 IP 주소로 변화해주는 서비스
SNMP (Simple Network Management Protocol) : 네트워크 장비를 모니터링하고 제어하는 프로토콜
FTP (File Transfer Protocol) : TCP환경에서 파일 전송 프로토콜
TFTP (Trival File Transfer Protocol) : UDP환경에서 파일 전송 프로토콜
HTTP (Hypertext Transfer Protocol) : 웹상에서 정보를 주고받을 수 있는 프로토콜
L3 전송 계층 / 세그먼트(Segment)
- TCP / UDP를 담당하는 계층
- 데이터의 전달을 보증하고 보낸 순서대로 받게 해준다.
- 즉, 순서가 맞지 않거나 중간에 빠진 부분을 점검하여 다시 요청하는 일을 담당.
TCP (Transmission Control Protocol)
- 연결 지향적 (Connection Oriented), 신뢰적, 흐름제어, 에러제어 (순서번호, ACK번호 사용) ACK 받지 못한 모든 데이터는 재전송된다.
- 장점은 보장된 세그먼트로 전달하기에 신뢰성이 있다.
- 단점은 연결을 위한 초기 설정 시간이 걸린다
UDP (User Datagram Protocol)
- 비연결 지향적 (Connectionless Oriented) 비신뢰적, 데이터를 보낸 후에 잘 도착했는지 검사하는 기능이 없다.
- 장점은 빠르며, 연결을 맺지 않으므로 제어 프레임 전송을 할 필요가 없기에 네트워크 부하를 줄일 수 있다.
- 신뢰성보다는 고속성을 요구하는 멀티미디어 응용 등에 사용되고 있다.
L2 인터넷 계층 / 데이터그램(Datagram) 또는 패킷(Packet)
IP를 담당하는 계층
IP를 사용하여 데이터의 원천지(origin)과 목적지(destination)에 관한 정보를 첨부한다.
IP는 복잡한 네트워크 망을 통하여 가장 효율적은 방법으로 데이터의 작은 조각들을 되도록 빨리 보내는 일을 한다.
따라서 IP는 패킷 전달 여부를 보증하지 않고,경로를 설정하여 어떻게든 빨리 보내도록 한다.
IP : 비연결의 서비스를 제공하며, 발신지와 목적지까지의 라우팅 경로를 결정
ICMP : IP제어와 메시지 기능을 담당
ARP : IP주소를 이용해 상대방의 MAC주소를 알아오는 프로토콜 (브로드캐스트 요청, 유니캐스트 응답)
RARP : MAC주소에 해당하는 IP주소를 알아오는 프로토콜 (브로드캐스트 요청, 유니캐스트 응답)
L1 링크 계층(=네트워크 연결 계층, Network Access Layer) / 프레임(Frame)
Node-To-Node간의 신뢰성 있는 데이터 전송을 담당하는 계층이다.
알맞은 하드웨어로 데이터가 전달되도록 MAC주소를 핸들링 하는것 뿐 아니라, 데이터 패킷을 전기신호로 변환하여 선로를 통하여 전달할 수 있게 준비 해준다.
TCP (Transmission Control Protocol)
- 데이터를 전송하기 전에 통신하는 양쪽 장치 간에 신뢰할 수 있는 연결을 설정 (TCP handshake)
- 데이터가 손실되지 않고 올바른 순서로 도착하게 하고, 손실된 패킷은 재전송한다.
- 수신자의 데이터 처리 속도 및 네트워크의 혼잡 상태에 맞추어, 전송 속도를 조절한다.
- 신뢰성이 중요한 응용 프로그램에서 주로 사용
UDP (User Datagram Protocol)
- 수신자가 패킷 수신 여부를 확인하지 않는다.
- IP와 거의 같고 + Port + 체크섬 정도만 추가된다.
- 애플리케이션 계층에서 추가 작업이 필요하다.
- 실시간 스트리밍, 음성 및 비디오 컨퍼런스(VoIP) 등 속도가 중요하고 일부 패킷 손실되도 무관한 경우에 사용
TCP 3 way handshake
SYN : 접속 요청
ACK : 요청 수락
3단계 )
1) SYN : 연결을 생성할 때 클라이언트가 / 서버에 시퀀스 번호를 보내는 패킷
2) SYN-ACK : 시퀀스 번호를 받은 서버가 / ACK 값을 생성하여 클라이언트에게 응답하는 패킷
3) ACK : 값을 사용하여 응답하는 패킷
Port Number
- 네트워크 서비스나 응용 프로그램을 식별하기 위해 사용 ( 컴퓨터 내의 프로세스를 구별/식별하는 수단 )
- 하나의 호스트에서 여러 네트워크 서비스가 동시에 동작하고,각 서비스가 데이터를 올바르게 처리
- 16bit 사용(ushort, 0 - 65535)
DHCP (출발:67,목적:68),
DNS (53),
FTP (control:20,data:1),
HTTP (80), HTTPS (443),
POP3 (110),
SMB (137-139),
SMTP (25),
SSH (22),
Telnet (23) 등
Stateful & Stateless
- Stateful 은 서버가 클라이언트의 상태를 보존하는 것
- 서버가 상태를 유지한다는 것은 서버가 클라이언트와의 현재 연결 및 클라이언트 간에 전송되는 모든 통신에 대한 정보를 유지한다는 의미
- 장점: 클라이언트 연결에 대한 정보를 서버에 유지함으로써, 서버와 클라이언트 간의 메시지 크기를 줄일 수 있으므로 서버가 요청에 빠르게 응답할 수 있다.
- Stateless (ex. UDP, HTTP)는 서버가 클라이언트의 상태를 보존하지 않는 것
- 파일 전송을 관리하는 것은 클라이언트의 몫
- 장점: 상태 유지에 대한 부하가 현저히 줄어들게 된다. 또한 상태를 보관하지 않아서 서버 1에 문제가 생겨 서버 2가 이어 받아도 응답하는데 있어 문제도 없다.
'CS > Network' 카테고리의 다른 글
데이터통신, 네트워크 장비 (0) | 2024.07.26 |
---|