
웩
Logical connection

Process-to-Process
- It provides a process-to-process communication between two application layers, one at the local host and the other at the remote host.
- Communication is provided using a logical connection.
프로세스?🙄 → 실행중인 프로그램!😏

주소 체계: Port Numbers

- 데이터의 최종 목적지 선택에 있어 IP주소와 포트 번호는 역할이 다르다.
- IP: 전세계의 호스트 중 특정 호스트를 찾기 위해 사용
- 포트 번호: 특정 호스트 내에 있는 하나의 프로세스를 찾기 위해 사용

ICANN 범위
- ICANN (Internet Corporation for Assigned Names and Numbers)
- 국제 인터넷 주소 관리 기구, 인터넷 도메인 관리와 정책을 결정
- Well-known ports
- Registered ports
- ICANN에 배정되거나 제어되지 않음, but 중복을 피하기 위해 등록될 수 있음
- Dynamic ports


Socket address
- 전송 계층 프로토콜은 연결을 설정하기 위해 각 종단마다 IP 주소와 포트 번호가 필요
- IP address + Port Number → Socket address!
- 클라이언트 소켓 주소는 클라이언트 프로세스 유일하게 정의
- 서버 소켓 주소는 서버 프로세스 유일하게 정의

Encapsulation & Decapsulation
- 프로세스 간 통신을 위해 메세지를 캡슐화(Encapsulation), 역캡슐화(Decapsulation) 수행
- Sender: Encapsulation, Receiver: Decapsulation

Multiplexing & Demultiplexing
- Multiplexing을 수행하는 device: Multiplexer (MUX)
- Demultiplexing을 수행하는 device: Demultiplexer (DEMUX)

Flow Control
- Pushing
- Consumer로 부터 선 요구 없이, 정보가 생성될 때마다 정보 전달하는 경우
- Pulling
- Consumer가 요구한 경우에만 Producer가 정보를 전송하는 경우


- Flow Control 방법: Buffer
- 송·수신 전송 계층의 버퍼 이용
- 버퍼? 송신측과 수신측에서 패킷을 저장할 수 있는 일련의 메모리 영역
Error Control
- Error Control
- L3 신뢰성 제공 x, L4에 오류 제어 서비스 추가해 신뢰성 제공
- 제공 기능
- 훼손된 패킷 감지 및 폐기
- 손실되거나 제거된 패킷 추적, 재전송
- 손실된 패킷이 도착할 때까지 순서 어긋난 패킷 버퍼에 저장

- Sequence Numbers
- Sender L4: 어떤 패킷이 재전송되어야 하는지 알아야함
- Receiver L4: 어떤 패킷이 중복되었는지 or 순서에 어긋나게 도착했는지 확인 가능해야함.
→ 패킷의 순서 번호(Sequence Number) 저장할 수 있도록 L4 패킷에 한 필드 추가
- 헤더 안에 각 패킷의 순서 번호를 포함하기 위해서는 최대값이 설정되어야함
- if) 패킷의 헤더에 sequence num을 위해 m비트가 설정, sequence num은 0~2^m-1 값의 범위를 가진다.
- if) m=4 이면 sequence num은 0 ~ 15 사이의 값
For error control, the sequence numbers are modulo 2^m, where m is the size of the sequence number field in bits

Flow Control + Error Control
- Sliding Window
- Sequence Num이 modulo2^m 이기 때문에 0 ~ 2^m-1까지의 sequence num을 원/선형 표현
- 윈도우의 모든 조각이 채워지면, 버퍼가 다 차서 더이상의 메세지 수신 불가함 (Sender)
- Ack 수신되면 윈도우 범위를 미끄러지듯 돌림

△ Sliding Window in circular format

△ Sliding Window in linear format
Congestion Control
- Congestion
- 네트워크로 전송되는 패킷 수가 네트워크에서 처리할 수 있는 용량을 초과하는 경우 혼잡 발생
- Congestion Control
- 혼잡을 제저하고 로드가 용량보다 작도록 하기 위한 기술
- 왜 발생하나요? 😕
- 네트워크에서 혼잡은 라우터나 스위치가 패킷을 저장하기 위한 버퍼인 큐를 가지고 있기 때문에 발생
예를 들어, 라우터는 각각 인터페이스에 입출력 큐를 가지고 있음. 라우터에 도착하는 패킷들을 처리할 수 없으면 큐는 과부하가 되며 혼잡이 발생.
Connectionless Service

Connection-oriented Service

Connectionless & Connection-oriented
- FSM (Finite State Machine)
- 가능한! 모든 상태와 상태 간의 transition으로 구성한 모델링 기법
- Connectionless FSM


글로벌소프트웨어캠퍼스와 교보DTS가 함께 진행하는 챌린지입니다.
가능한
빨간색이 보이게