익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
TCP 시퀀스 번호
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
'''TCP 시퀀스 번호'''(TCP Sequence Number)는 TCP(Transmission Control Protocol)에서 데이터 패킷의 순서를 추적하고, 전송 중 손실된 데이터의 재전송 및 올바른 데이터 조립을 보장하기 위해 사용하는 숫자이다. 시퀀스 번호는 TCP 연결에서 매우 중요한 역할을 하며, 송신 측에서 전송하는 각 바이트에 고유한 번호를 할당한다. 수신 측에서는 이를 기반으로 패킷이 올바른 순서로 도착했는지 확인할 수 있다. ==시퀀스 번호의 주요 역할== *'''데이터 순서 보장''' **시퀀스 번호는 각 바이트에 고유 번호를 할당함으로써, 수신 측이 전송된 데이터를 올바른 순서대로 재조립할 수 있게 한다. **이를 통해 데이터가 원래 순서와 다르게 도착하더라도 올바른 순서로 재구성할 수 있다. *'''데이터 손실 감지 및 재전송''' **수신 측에서는 시퀀스 번호를 통해 누락된 패킷을 감지할 수 있다. **특정 시퀀스 번호의 패킷이 누락되었을 경우, 수신 측은 송신 측에 해당 패킷을 재전송해달라고 요청할 수 있다. *'''연결 제어 및 흐름 제어''' **TCP 연결 설정 시, 시퀀스 번호는 초기화되어 양측 간 데이터 흐름을 관리한다. **특히 수신 측은 확인 응답(ACK)으로 다음에 기대하는 시퀀스 번호를 송신 측에 알려주어 데이터 전송 속도를 조절할 수 있다. ==시퀀스 번호 초기화== * TCP 연결 설정 시, 클라이언트와 서버는 각각 초기 시퀀스 번호(ISN, Initial Sequence Number)를 임의로 선택하여 설정한다. * 이 초기 값은 보안과 데이터 무결성을 유지하는 데 중요하며, 일반적으로 무작위로 선택된다. * 클라이언트와 서버는 서로의 초기 시퀀스 번호를 SYN 패킷을 통해 교환하고, 이후 ACK 패킷으로 이를 확인하여 연결을 완료한다. ==예시== TCP 통신에서 클라이언트가 서버로 500 바이트의 데이터를 전송한다고 가정하자. 클라이언트의 초기 시퀀스 번호가 1000이라면, 각 바이트에는 다음과 같이 시퀀스 번호가 할당된다. *첫 번째 바이트: 시퀀스 번호 1000 *마지막 바이트: 시퀀스 번호 1499 서버가 모든 데이터를 수신한 후 확인 응답을 보낼 때, 다음에 기대하는 바이트의 시퀀스 번호인 1500을 ACK 값으로 보내게 된다. 이를 통해 송신 측은 모든 데이터가 정상적으로 수신되었음을 확인하고, 이후 데이터 전송을 이어 나간다. ==같이 보기== *[[TCP 헤더]] *[[SYN 패킷]] *[[ACK 패킷]] *[[데이터 흐름 제어]] *[[연결 제어]] [[Category:네트워크]]
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록