인터세 통신을 위해서는 일종의 주소가 필요합니다. 그 역할을 하는것이 바로 흔히들 말하는 ip주소 Internet protocol인 IP입니다.
패킷의 전송 방식은 클라이언트 > 서버로 전송을 하는 방식과 서버 > 클라이언트로 전송을 하는 방식 2가지가 있습니다.
ex)
IP 통신의 한계를 보완하고자 나온게 전송 제어 프로토콜인 TCP통신입니다.
tcp/ip의 패킷정보)
연결지향
- TCP 3way handshake(가상 연결)
참고)
데이터의 전달과 순서를 보증합니다
가장 많이 사용되며 신뢰할 수 있는 프로토콜입니다.
사용자 데이터그램 프로토콜
UDP는 IP와 거의 같으며, 추가적으로 PORT, 체크섬 정도만 추가 되었습니다.
애플리케이션에서 추가적인 작업이 필요합니다.
URL과 URN을 포괄하는 가장 큰 개념입니다.
URI와 URL은 거의 비슷한 의미로 사용되고 있다고 생각합니다.
https://www.google.com/search?q=hi
• scheme/프로토콜(https)
-주로 프로토콜을 기재합니다.(http, https, ftp)
- http는 80포트, https 443포트를 주로 사용하며 포트 번호는 생략이 가능합니다.
- https는 http에 보안(HTTP secure)이 추가된 것입니다.
• 호스트명(www.google.com)
- 도메인명 또는 IP주소를 직접 기재할 수 있습니다.
• 포트 번호(443)
- 일반적으로 생략하며 생략시 http는 80, https는 443입니다.
• 패스(/search)
- 리소스의 경로로 계층적 구조입니다.
• 쿼리 파라미터(q=hello&hl=ko)
- key=value형태로 ?로 시작하고, &로 추가 가능합니다.
- 문자 형태입니다.
웹 브라우저의 요청 흐름은 HTTP 요청 메세지 생성 > 전송 > HTTP 응답 생성 > 응답을 다시 클라에게 전달하는 식으로 진행이 됩니다.
위 글을 한번 보시고 그림으로 한번 자세하게 보겠습니다.
[출처, 참고] https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard