일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- LAN어댑터
- 액세스회선
- tomcat
- 소켓
- IntelliJ
- Collection
- Set
- STREAM
- sonarQube
- ansible
- 방화벽
- JPA
- Jenkins
- mybatis
- Pipeline
- DevOps
- AOP
- docker
- container
- Linux
- jdk
- 허브
- Spring
- gradle
- post
- 캐시서버
- 라우터
- map
- cloud
- Java
- Today
- Total
목록ACK번호 (2)
거북이-https://velog.io/@violet_evgadn 이전완료
소켓을 생성한 뒤 소켓사이를 연결하는 커넥션을 만들고 데이터 송/수신을 진행한 뒤 연결을 끊는 과정까지 모두 공부해 보았다. 이제 배울 것은 실제 송/수신되는 데이터인 패킷이 어떻게 만들어지는가와 어떻게 송/수신되는가에 대해 배울 차례이다. 하지만 이를 배우기 전 데이터/송신 과정 정체를 정리해 보고 이전에 말했던 오류 검출 및 회복에 대해 알아본 뒤 패킷에 대해 알아보도록 하자. 그림으로 보는 데이터 송/수신 과정 3-way Handshake - 연결 일단 서버 측에서는 애플리케이션을 동작시키면서 소켓을 미리 만든 뒤 접속 대기 상태로 만든다. 이때 소켓을 "Wait for Client 상태"에 있다고 한다. 이후 Client는 데이터 송/수신을 위하여 소켓을 만든다. 그리고 SYN 비트가 1인 TCP..
데이터 송신 ◎ write connect를 통해 데이터 송/수신을 위한 통로인 커넥션을 만들었으니 데이터를 실제로 송신해 보자. 애플리케이션은 데이터를 송신하기 위해 "write" 메서드를 호출하여 프로토콜 스택에 송신 데이터를 건네준다. 이 동작에는 몇 가지 특징이 존재한다. 먼저 프로토콜 스택은 데이터의 내용에 대해 큰 신경을 쓰지 않는다. 프로토콜 스택에게 있어 전달받은 메시지는 단순히 입력받은 길이만큼 나열된 Binary Data일 뿐이다. 두 번째로 프로토콜 스택은 데이터를 받자마자 송신하는 것이 아닌 송신용 버퍼 메모리 영역에 잠시 저장시킨다는 것이다. 애플리케이션에서 프로토콜 스택에 송신을 의뢰할 때 데이터의 길이는 애플리케이션의 종류나 데이터를 만드는 방법에 따라 결정된다. 한 번에 모든 ..