강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

choiiohc1님의 프로필 이미지
choiiohc1

작성한 질문수

모든 개발자를 위한 HTTP 웹 기본 지식

웹 브라우저 요청 흐름

HTTP 메시지 전송에서 3-way handshake 과정에 대한 자세한 설명 부탁드려요

작성

·

537

0

먼저, 좋은 강의 감사드립니다.
 
강의 1:48초 부근부터 HTTP 메시지 전송 설명해주신 내용을 보면,
"TCP/IP로 IP와 PORT를 찾았고 SYN, SYN+ACK, ACK 해서 구글 서버와 연결한다" 라고 하시는데요.
 
이 내용에 대해서 아래에 대한 추가적인 질문들에 대한 답변을 요청드려요.
1) DNS 서버를 조회해서 IP를 찾아낼 수 있다고 하셨는데 DNS 서버에서 포트정보도 주나요? 아니면 기본 포트 정보(ex) http:80, https:443 )로 서버와 3-way Handshake 과정을 진행하나요?
 
2) 결국 통신하기 위해서는 네트워크 인터페이스를 거쳐서 서버에 연결이 되어야 하는데 그럼 3 -way handshake 과정은 client의 TCP/IP 계층->client의 네트워크 인터페이스 -> server의 네트워크 인터페이스 -> server의 TC/IP 계층까지만 (not 애플리케이션 계층) 통신을 하는건지 궁금합니다.
 
답변 부탁드려요. 감사합니다!
 

답변 1

2

안녕하세요. choiiohc1님, 공식 서포터즈 David입니다.

.
1) DNS 서버를 조회해서 IP를 찾아낼 수 있다고 하셨는데 DNS 서버에서 포트정보도 주나요? 아니면 기본 포트 정보(ex) http:80, https:443 )로 서버와 3-way Handshake 과정을 진행하나요?

=> DNS는 포트까지 구분하도록 만들어지지 않았습니다. 따라서 http(80), https(443) 외 다른 포트넘버를 구분해야 한다면 사용자가 요청시 특정 포트를 붙여서 요청해야 합니다.

2) 결국 통신하기 위해서는 네트워크 인터페이스를 거쳐서 서버에 연결이 되어야 하는데 그럼 3 -way handshake 과정은 client의 TCP/IP 계층->client의 네트워크 인터페이스 -> server의 네트워크 인터페이스 -> server의 TC/IP 계층까지만 (not 애플리케이션 계층) 통신을 하는건지 궁금합니다.

=> three way handshake은 tcp/ip 계층(OS의 tcp/ip stack)에서 처리하게 됩니다.
.
감사합니다.

choiiohc1님의 프로필 이미지
choiiohc1

작성한 질문수

질문하기