728x90
네트워크 계층 서비스
호스트(Host) 간의 통신
- 인터넷 호스트 간에 패킷(데이터그램) 전달
※ 패킷(데이터그램): 인터넷 네트워크 계층에서 전달되는 단위 - 호스트의 인터넷 통신 장치: NIC(Network Interface Card)
최선형(Best-effort) 서비스
- 자원이 허락하는 범위 내에서 최적의 통신 서비스 제공
- 자원이 부족한 경우 지연시간 발생, 패킷 훼손/손실 발생 가능: 비신뢰 서비스(unreliable service)
- 최선형 서비스와 반대되는 개념으로 보장형(Guaranted) 서비스가 있다.
비연결형(Connectionless) 서비스
- 패킷 전달 경로가 다를 수 있다.
- 패킷 도착 순서가 다를 수 있다.
IP(Internet Protocol)
- IP 주소 기반의 패킷(데이터그램) 전달
- IP 주소: 인터넷에 연결된 NIC(호스트) 구분
응용 프로세스(Application Process) 간의 통신
트랜스포트 계층 서비스
세그먼테이션 / 리어셈블리(Segmentation/Reassembly)
- 응용 프로세스가 전송 요구하는 메시지를 네트워크 계층이 교환 가능한 크기의 단위(세그먼트)로 나누어 네트워크 계층에 전달
- 네트워크 계층을 통해 수신되는 세그먼트들을 메시지로 재조립하여 응용 프로세스에게 전달
다중화(multiplexing) / 역다중화(demultiplexing)
- 다수의 응용 프로세스가 전송 요구하는 메시지를 구분 가능한 정보를 추가한 세그먼트로 만들어 네트워크 계층에 전달: 포트 번호(Port Number)
- 네트워크 계층을 통해 수신되는 세그먼트의 포트번호를 사용하여 메시지를 전달할 응용 프로세스 선택
무결성(Integrity) 확인
- 수신 세그먼트 비트의 손상 여부 확인
- Chcksum(검사합) 기술 적용
신뢰 전송(Reliable Transfer)
- 오류 복구(Error Recovery): 손상 또는 손실 세그먼트 복구
- 흐름 제어(Flow Control): 수신 버퍼 오버플로우 방지
혼잡 제어(Congestion Control)
- 전송량 조절을 통해 네트워크 혼잡 상황 회피 및 해소
트랜스포트 프로토콜
다중화 / 역다중화 개념
- 네트워크 계층: 인터넷 상에서 호스트 간에 데이터 전달
- 네트워크 계층을 담당하는 장치: NIC
- 즉, NIC -> NIC 전달
- 크라이언트 응용 프로세스는 여러 개가 달려있다. 이를 구분하기 위한 방법은 다음과 같다.
- 특정 어플리케이션 프로세스를 구분하기 위한 주소 = IP 주소 + PORT 번호
- 왼쪽 그림은 하나의 세그먼트이다. 여기에서 출발지 포트번호와 목적지 포트번호를 알 수 있다.
- 이 세그먼트는 IP 데이터그램의 일부로 들어가는데, 이때 IP 네트워크 계층에 있는 출발지 IP 주소와 도착지 IP주소를 통해 어플리케이션 프로세스를 구분할 수 있다.
소켓(socket)
- 트랜스포트 계층이 제공하는 응용 프로세스 통신 통로 자료구조
- 응용 프로세스 주소: 소켓 주소(IP 주소 + 포트번호) -> 인터넷에 있는 모든 소켓 구분 가능
다중화 유형
- 연결형(connection-oriented): 통신 소켓 간에 1:1 논리적 연결 설정
- 비연결형(connectionless): 통신 소켓 간에 1:1 논리적 연결 미설정
비연결형 다중화: UDP
- 소켓 식별: IP 주소 + Port 번호
- 1:1 통신, 1:N 통신 가능
- P1은 P3, P4와 통신한다.
- 하지만 P1은 하나의 소켓만으로 통신한다.
- 어플리케이션 프로세스가 소켓에 들어오는 세그먼트를 보고 누가 보냈는지 구분한 다음 처리를 하는 것이 비연결형 다중화이다.
연결형 다중화: TCP
- 소켓 식별: 출발지 IP 주소 + 출발지 Port 번호 + 목적지 IP 주소 + 목적지 Port 번호
- 항상 소켓 간 소켓 간 1:1 연결
728x90
'Computer Network' 카테고리의 다른 글
[컴퓨터 네트워크] 오류 복구1: Stop-and-wait ARQ (0) | 2022.10.05 |
---|---|
[컴퓨터 네트워크] UDP와 검사합(checksum) (1) | 2022.10.05 |
[컴퓨터 네트워크] DNS(Domain Name System) (0) | 2022.09.27 |
[컴퓨터 네트워크] 이메일과 SMTP (0) | 2022.09.27 |
[컴퓨터 네트워크] 웹과 HTTP(2): 메시지, 쿠키, 캐시 (0) | 2022.09.25 |
댓글