티스토리 뷰
프로토콜 스택간 동작 원리
nestat
제어정보 (헤더)
제어정보는 서버측에서 확인할 수 없다.
- 송신처, 수신처 포트번호
- SEQ,ACK
- 데이터 오프셋
- 컨트롤 비트: 통신제어를 위한비트
- ACK: 수신데이터의 일려번호 필드가 유효함을 나타냄 -> 데이터를 올바르게 도착했음을 의미한다.
- SYN: 송신측과 수신측의 일렬번호를 확인, 최초연결 시 사용
- FIN: 연결끊기
- URG: 긴급포인터의 유효
- RST: 접속 강제종료
- 윈도우: 수신처에서 받을 수 있는 데이터의 양을 송신측에 알려주기 위한 제어정보
- 긴급 포인터: 긴급하게 처리해야 할 데이터를 나타냄
- 체크섬: 오류 유무 사용
TCP
- 데이터를 송수신하기 위한 프로토콜
- 패킷을 제대로 받지 못했을 경우 다시 송신
- 수신확인 응답이 꼭 필요하다.
UDP
- 데이터를 송수신하기 위한 프로토콜
- 수신확인 응답이 필요없음
- 패킷에 오류가 발생하여도 무시한다.
- 음성 및 동영상 데이터에 사용된다
- 시간안에 데이터를 건네주어야 한다.
IP
패킷 송수신 동작을 제어하는 부분
패킷
- 데이터를 운반하기위해 데이터를 작게 나눈 형태
- 데이터를 저장한 패킷의 경우 data가 패킷에 담겨 있다.
- 데이터가 들어있지 않은 경우 header만 패킷에 들어간다
- header = IP 제어정보 + TCP제어정보
MTU
한 패킷으로 운반할 수 있는 최대길이
MSS
헤더를 제외한 데이터의 최대길이
패킷 분할
- 송신버퍼에 MSS의 길이가 초과하면 패킷을 분배
- 패킷 분배시 HTTP 헤더까지 데이터로 판단하여 분할한다 -> 프로토콜 스택은 Application의 데이터를 모른다.
- 분배 후 TCP 헤더 부가
ARP
arp -a
- IP주소에 대응하는 이더넷의 MAC 주소를 조사할 때 사용
ICMP
- 오류 및 제어용 메세지 통지
reference
성공과 실패를 결정하는 1% 네트워크 원리
'성공과 실패를 결정하는 1%의 네트워크원리' 카테고리의 다른 글
[네트워크 원리] 소켓라이브러리 동작 (0) | 2021.10.29 |
---|---|
[네트워크 원리] 도메인과 IP주소 (0) | 2021.10.28 |
[네트워크 원리] Http 기본개념 (0) | 2021.10.28 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- React useMemo
- React useCallback
- 불량 사용자 자바스크립트
- node 버전 마이그레이션
- serverless 배포
- 관심사 분리하기
- storybook react is not defiend 해결
- CSS
- 표현 가능한 이진트리
- 선언적 UI
- react suspense
- 에러핸들링
- nextjs 에러핸들링
- suspense 장점
- nestjs 배포하기
- 자바스크립트
- 백준 1600번
- 서비스 디자인 패턴
- storybook scss이슈
- nextjs errorboundary
- 서버사이드 error handling
- 1600 파이썬
- useCallback과 useMemo 사용
- javascript
- storybook scss import
- serverless nestjs
- node version yarn berry
- 미로탈출 명령어
- 백준 22862
- 가장 긴 짝수 연속한 부분 수열
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함