CS/네트워크(19)
-
✨웹 서비스 구조 기본 이론
참고 자료 : 널널한 개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 HTTP통신과 JavaScript 클라이언트와 서버가 HTTP통신을 하기 위해서는 TCP Connection과 IP 통신이 이루어져야 가능하다. URI를 브라우저 입력하면 클라이언트는 서버로부터 HTTP Request를 보낸다. 맨 처음 사용되었던 메서드는 GET으로 웹 서버에 있는 HTML리소스를 가져오는 용도로 사용되었다. 이 후, 스타일적 보완을 위한 CSS와 여러 파일들을 HTML리소스 안에 함께 불러올 수 있게 되었다. 이렇게 가져온 HTML파일을 구문분석을 한 후에 브라우저에 렌더링하면 사용자가 볼 수 있게 된다. 여기까지의 브라우저로 보여지는 문서는 정적인 특징을 가지고 있다. 즉, 사용자와의 인터렉션과 동적인 작업이 ..
2024.06.03 -
HTTP
참고 자료 : 널널한 개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 HTTP는 HTML문서를 전송 받기 위해 만들어진 응용 프로그램 계층(L7) 통신 프로토콜이다.기본적으로 클라이언트의 요청에 대응하는 응답형식으로 작동한다. L3에서 IP Packet, L4에서 Segment, 그리고 L5계층 이상으로 올라오면 Socket을 거쳐 Stream으로 데이터 단위가 변화한다.이 Strem은 Packet과 Segment처럼 일정한 단위를 가지고 나눈 데이터가 아닌 연속적인 데이터의 형태이다.그렇기에 데이터의 시작점부터 어디까지가 끝인지를 알아야하는데 HTTP에 명시되어있다. HTTP는 헤더와 페이로드가 문자열로 구현되어있다.크롬 브라우저의 검사 기능을 활용하면 HTTP의 헤더와 페이로드를 확인할 수 있다...
2024.06.03 -
URL과 URI
참고 자료 : 널널한 개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 URL과 URIURL(Uniform Resource Locator)과 URI(Uniform Resource Identifier)는 위치냐 식별자냐의 차이점이 있는데 그것보다 리소스라는 키워드에 집중하는 것이 좋다. 개념적으로는 URI가 더 큰 범주다. 여기서 말하는 리소스는 브라우저가 렌더링에 필요로 하는 요소들 즉, HTML, CSS, JS 등 파일들을 말한다.파일들이 실제 존재하는 위치냐, 파일들을 식별하는 식별자냐의 차이가 있는 것이다. 위의 그림 전체 주소가 리소스를 식별할 수 있는 URI라고 볼 수 있다.Domain에 해당하는 부분은 호스트를 식별할 수 있는 기준이 된다. 그리고 Path가 리소스 즉, 파일의 경로이다...
2024.06.03 -
DNS
참고 자료 : 널널한 개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 개요 잡아보기 컴퓨터A는 IP주소가 93.184.216.34라는 컴퓨터B에 접속하려고 한다. 컴퓨터B는 IP주소가 아닌 어떤 이름을 입력하면 자신에게 접속할 수 있게끔 하고싶다. 예를 들어 www.example.com처럼 말이다.어째든 서로 다른 호스트끼리 소통을 하려면 IP주소가 필요하기 때문에 컴퓨터B는 IP주소와 www.example.com을 매핑해 www.example.com을 입력하면 자신의 IP주소를 전달해주고 싶은 것이다. 이 데이터를 DNS Server에 저장한다. 그렇다면 이제 컴퓨터A가 컴퓨터B에 접속하려고 한다면, 컴퓨터 A는 DNS Server에게 www.example.com에 매핑된 IP주소가 있는지 물어본..
2024.06.02 -
L4 ▶ TCP 연결이라는 착각
참고 자료 : 널널한 개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 TCP 연결은 착각이다?TCP 연결이 착각이라는 말은 무슨 말일까. 만약 파일을 다운로드 중, LAN 케이블을 분리했다가 다시 연결하면 TCP 연결은 어떻게 될까?결론부터 말하면 연결은 잠시 유지된다. 연결이 유지되는 것이 아니라 잠시 유지되는 것이다. 즉, 이 말은 물리적인 연결이 제거되어도 논리적인 연결은 잠시 유지된다는 것이다. TCP 연결은 논리적인 개념이다.다른 예시로 무선 Wifi를 왔다갔다 다른 것으로 변경해도 보고있는 영상을 인터넷이 완전 끊기지 않은 이상 잠시동안 볼 수 있다.이는 물리적인 충격을 가해도 버퍼를 통해 잠시나마 데이터를 보관할 수 있기 때문이다. 어째든 잠시동안은 유지가 된다. 그런데 계속 유지하지는 ..
2024.06.02 -
L4 ▶ TCP Header / UDP Header
참고 자료 : 널널한 개발자님의 외워서 끝내는 네트워크 핵심이론 - 기초 TCP Header 형식 자세한 설명은 해당 블로그를 참고하자. TCP 헤더 설명 뿐만 아니라 등장 배경도 잘 설명되어있다.https://evan-moon.github.io/2019/11/10/header-of-tcp/#tcp%EC%9D%98-%ED%97%A4%EB%8D%94%EB%A5%BC-%EA%B9%8C%EB%B3%B4%EC%9E%90 TCP는 20bytes의 헤더를 사용하며 여러가지 옵션을 사용했을 최대 60bytes까지 사용할 수 있다.Source port : 출발지의 포트번호이다. 16bit의 크기를 가진다.Destination port : 목적지의 포트번호이다. 16bit의 크기를 가진다.Sequence Number :..
2024.06.02