- ARP : Address Resolution Protocol
- TCP : Transmission Control Protocol
- 세그먼트
- three-way handshaking
- 송수신측 모두 윈도우를 각각 가지고 있음
- RTO : Retransmission Time Out
- RTT : Round Trip Time
- rnwd : receive windoe
- cnwd : congestion window → 사이즈는 min(rnwd, cnwd)
- slow start : cwnd++(1씩 증가시킴), increase additively
- fast recovery : cwnd + (1/cnwd), sshtresh 를 넘으면 exponentail increas
- Taho TCP
- 시작은 cwnd = 1, ssthresh는 cwnd 가능한 크기의 절반, slow start(exponential increase)
- ex) cwnd 크기가 8인 경우 ssthresh는 4
- ssthresh를 만나면 additively increase (1씩 증가)
- 타임아웃 or 3ACK duplicated (혼잡 발생) → ssthresh는 현재 cwnd의 절반으로 수정하고 cwnd를 1로 초기화, slow start (다시 exponential increase)
- ex) cwnd=6에서 혼잡 발생 → sstresh = 3, cwnd = 1로 변경
- 그러다 또 sstresh에 도달하면 1씩 증가하는 additively increase 시작
- 즉, sstresh 도달하면 additively increase
- 혼잡 감지 (time out, 3dupACKs) 하면 slow start (exponential increase) + sstresh = cwnd/2 , cwnd = 1
- Reno TCP
- 시작은 cwnd = 1, ssthresh는 cwnd 가능한 크기의 절반, slow start(exponential increase)
- 3dupACKs → cwnd를 현재의 절반으로 줄이고, additively increase 시작 = fast recovery, ssthresh는 줄어든 cwnd와 동일한 크기설정
- ex) cnwd =6 에서 혼잡 발생한 경우, cwnd = 3, ssthresh = 3으로 설정한 뒤, additively increase
- 타임 아웃 발생 → Taho처럼, cwdn =1로 줄이고 ssthresh는 변경하지 않고, exponential increase (slow start)
- 즉, 타임아웃과 3dupACK를 구분해서 대처를 다르게 함
- UDP : User Datagram Protocol
- 데이터그램 = 패킷
- 헤더 사이드 8 바이트
- 데이터 길이 = total length - 8 바이트 (헤더)
- 혼잡, 오류, 흐름 제어 없음 (오류 - checksum)
- RIP : Routing Information Protocol
- TFTP : Trivial File Transfer Protocol
- QUIC : Quick UDP Internet Protocol
- SCTP : Stream Control Transmission Protocol
- UDP + TCP
- IP : Internet Protocol
- FTP : File Transfer Protocol
- control connection + data connection(포트 20)
- HTTP : Hyper Text Transfer Protocol
- TCP
- 서버는 80 포트 사용
- ICMP : Internet Control Message Protocol
- IP 데이터그램을 캡슐화하는 프로토콜 → 프레임
- ICMP message 1) error reporting
- type3 unreachable destination
- type4 source quench (혼잡 경고)
- type5 redirection → code0~3
- type11 time exceeded → code0 TTL =0, code1 = 정해진 시간 내 fragment 모두 받지 못함
- type12 parameter problem → code0 헤더에 문제 포인터 값이 문제 발생 부분 바이트 나타냄, code1 옵션 일부 없음
- ICMP message 2) query message
- type0,8 echo request reply
- type13,14 timestamp
- type17,18 address mask
- type9,10 router solicitation, advertisement
- LAN : Local Area Network
- WAN : Wide Area Network
- ISP : Internet Service Provider
- RFC : Request For Comment
- 인터넷에서 작동하는 것들이 엄격하게 지켜야 하는 명세
- OSI : Open System Interconnection
- API : Application Programming Interface
- WWW : World Wide Web
- URL : Uniform Resource Locator
- SMTP : Simple Mail Transfer Protocol
- connection establichment 클라이언트가 25번 포트로 TCP 연결 생성 → message transfer → connection termination
- UA : User Agent
- MTA : Message Transfer Agent
- MAA : Message Access Agent
- POP3 : Post Office Protocol version 3
- 클라이언트 = 메일 수신자 컴퓨터
- 서버 = 메일 소프트웨어가 설치된 서버)
- IMAP4 : Internet Mail Access Protocol version 4
- 다운로드 전 헤더 확인 가능
- 특정 문자열 내용 검색 가능
- 부분적 다운로드 가능
- 서버에서 메일 박스 이름 변경 생성 삭제 가능
- 메일 저장소에서 박스 계층 생성 가능
- MIME : Multipurpose Internet Mail Extension
- ASCII 아닌 데이터 받기 위한 보조적 프로토콜
- TELNET : TErminal NETwork
- NVT : Network Virtual Terminal (인터페이스 → 시스템간 서로 다른 메시지 표현 매커니즘 문제 해결)
- SSH : Secure SHell (보안 + 데이터 교환)
- DNS : Domain Name System
- 호스트 IP 주소 - 이름 맵핑 저장소
- 최대 63 char
- DHT : Distributed Hash Table
- Chord
- Pastry
- Kademlia
- 2^m 주소 공간 사용 → 0~2^(m-1) 개의 주소 범위
- hash(peer ip address)로 노드 식별자 생성)
- ICANN : Internet Coporation of Assigned Names and Numbers
- SR : Selective Repeat Protocol (transport protocol)
- GBN : Go Back N Protocol (transport protocol)
- DHCP : Dynamic Host Configuration Protocol
- NAT : Network Address Translation
- MPLS : Multi Protocol Label Switching
- distance vector routing
- 벨만 포드 알고리즘
- cost = 홉 개수
- 소규모 네트워크에 적합
- RIP : Routing Information Protocol - unicast (단일 송수신지),intradomain routing
- link state routing
- 다익스트라 알고리즘
- OSPF: Open Shortest Path First - 각 link마다 가중치를 부여, 다익스트라 알고리즘 사용해서 shortest path tree 생성 후 포워딩 테이블 생성,
- cost = 홉, 지연, 대역폭 등 다양한 변수 고려
- 대규모 네트워크에 적합
- LSDB → flooding: DB 생성
- path vector routing
- BGP4 : Border Gateway Protocol version 4
- interdomain routing protocol (AS 간)
- path attribute = o (optional), p (partial), t (transitive), e (extended)
- multicast address
- local network control block 224.0.0.0/24 : 네트워크 내부에서 사용되는 멀티캐스트 라우팅 프로토콜에 할당
- internetwork control block 224.0.1.0/24 : 인터넷 전체에서 할당
- source specific multicast block 232.0.0.0/8 : IGMP 프로토콜에서 사용
- GLOP block 233.0.0.0/8 : AS 내부에서 사용, 주소 범위 정의
- adminstratively scoped block 239.0.0.0/8 : 인터넷의 특정 area에서 사용되는 블럭
- IGMP : Internet Group Management Protocol
- source specific multicast block 232.0.0.0/8
- DVMRP : Distance Vector Multicast Routing Protocol
- MOSPF : Multicast Open Shortest Path First
- PIM : Protocol Independent Multicast
'컴퓨터 공학 > 컴퓨터 네트워크' 카테고리의 다른 글
[컴퓨터 네트워크] 네트워크 계층 기본 개념 정리 (0) | 2021.05.30 |
---|---|
[Python3/컴퓨터 네트워크] 소켓 프로그래밍 : 파일 전송 프로그램 (0) | 2021.05.03 |
[Python3/컴퓨터 네트워크] 소켓 프로그래밍 : 멀티 쓰레드 (0) | 2021.05.03 |
[컴퓨터 네트워크] Transport Layer 전송 계층 기본 개념 정리 (0) | 2021.05.02 |
[컴퓨터 네트워크] Application layer 애플리케이션 계층 기본 개념 정리 (0) | 2021.05.02 |