Recent Posts
Recent Comments
Archives
- Today
- Total
Byeo
TCP SYN_RECV state의 ACK 처리 1 본문
반응형
우리는 앞선 포스트에서 3-way handshake의 1st packet을 서버가 수신한다면 어떤 코드를 거치는지 확인했습니다: https://byeo.tistory.com/entry/Listen-socket%EC%9D%98-TCP-SYN-%EC%B2%98%EB%A6%AC
Listen socket의 TCP SYN 처리 1
accept system call은 established된 connection에 대해서 fd를 할당해 userspace에게 제공합니다. 그러면 3-way handshake의 TCP_SYN은 누가 처리할까요? 한 번 그 과정을 알아봅니다. 단, tcp code만 살펴볼 예정이고,
byeo.tistory.com
- 1st handshake: 서버는 SYN packet을 수신하면 tcp의 global variable hashinfo의 ehash에 넣어놓습니다.
- 2nd handshake: 그리고 SYN | ACK를 송신하죠.
- 3rd handshake: 클라이언트가 SYN | ACK를 정상적으로 수신했다면, 마지막으로 ACK를 송신할 것입니다. 우리는 이제 서버가 이 ACK를 어떻게 처리할지 알아보려고 합니다.
포스트 순서가 3-way handshake랑 순서가 어긋난 있긴 하나, Listen()과 Accept() 사이를 이해하기 위해서이니 양해 바랍니다.
반응형
'프로그래밍 (Programming) > 네트워크 스택' 카테고리의 다른 글
Listen socket의 TCP SYN 처리 2 (0) | 2024.05.31 |
---|---|
Listen socket의 TCP SYN 처리 1 (0) | 2024.05.25 |
ftrace 사용법 (0) | 2024.05.23 |
accept system call 3 (inet_accept) (0) | 2024.05.19 |
[Linux Kernel] Blocking I/O (0) | 2024.05.17 |