본문 바로가기

CS/네트워크22

[네트워크] 이더넷 프레임 이더넷 프레임의 이더넷 헤더에는 3가지 정보가 담기게 된다. 1. 목적지 MAC 주소 2. 출발지 MAC 주소 3. 타입코드 값 (이더넷으로 운반되는 데이터의 타입코드 값이다.) - V4인지 ARP인지 V6인지 2022. 5. 31.
[네트워크] 이더넷, MAC 주소 1. 이더넷 이더넷은 TCP/IP 네트워크 아키텍처의 맨 아래 계층인 네트워크 인터페이스 계층의 프로토콜이다. 이더넷의 역할 - 이더넷은 "같은 네트워크" 내의 어떤 이더넷 인터페이스로부터 다른 이더넷 인터페이스에게 데이터 전송을 하는 프로토콜이다. 2. MAC 주소 (물리주소, 하드웨어 주소 라고도 불리운다.) 이더넷 인터페이스를 특정하기 위한 48비트로 이루어져 있는 주소이다. MAC주소는 이더넷 인터페이스에 미리 할당되어 있어 기본적으로는 변경할 수 없다.(그러나 변경가능!) 앞 24비트는 OUI, 뒤 24비트는 시리얼 넘버로 이루어져 있다. (OUI는 인터페이스를 제조한 제조 메이커의 식별 번호이다.) 표기는 16진수로 표기하며 1바이트씩 표기시에는 -와 :를 사용하여 구분하고, 2바이트씩 표기할.. 2022. 5. 31.
[네트워크] 웹 애플리케이션 웹 브라우저를 UI로 사용하는 애플리케이션을 "웹 애플리케이션" 이라고 한다. 다음은 웹 애플리케이션의 대략 적인 흐름도 이다. 웹서버, APP서버, DB서버로 표현해 놓았지만 저 부분에는 사실 대부분에서 사용하는 패턴인 MVC패턴을 이용하여 웹 애플리케이션을 구동하게 된다. 웹 애플리케이션의 request와 response를 받는 과정의 흐름을 조금 더 세부화 해서 보자면 1. URL을 입력 2. TCP/IP 통신에서는 반드시 IP 주소가 필요하므로 호스트 명을 DNS서버에 질의하게 된다. -> IP 주소 획득 3.IP 주소를 얻었다면, MAC주소를 찾는 ARP도 실행 된다. -> MAC주소 획득 4.IP와 MAC주소를 둘다 알게 되었다면 TCP/IP 3way handshake를 통해 클라이언트와 서버.. 2022. 5. 31.
[네트워크] 프록시 서버 - 프록시 서버는 진짜 서버와 클라이언트 사이에 존재하는 가짜 서버라고 볼 수 있다. - 프록시 서버를 쓰는 이유 1. 클라이언트 PC의 웹 브라우저에서 어떤 웹사이트에 접속하는지 확인하기 위해서. 2. 불법 등의 웹사이트에 접속 하지 못하게 하려고. 등등 2022. 5. 31.
[네트워크] HTTP 쿠키 HTTP 쿠키는 웹사이트의 접속기록을 기억하기 위해 사용된다. 쿠키가 등장하게 된 이유는 HTTP 프로토콜이 Statusless(무상태성) 한 특성을 가지고 있기 때문이다. 2022. 5. 31.
[네트워크] HTTP Request와 HTTP Response 웹 브라우저와 웹서버 애플리케이션은 HTTP를 이용해 파일을 주고 받는다. HTTP 통신 전에 브라우저와 서버는 TCP 커넥션을 맺는다. - HTTP Request HTTP 리퀘스트는 이렇게 나뉜다. 1. 리퀘스트 라인 : 웹 서버 애플리케이션에 요청을 전달. - HTTP 메소드, URL, HTTP 버전 2. 메시지 헤더 : 리퀘스트 라인에 이어지는 여러줄의 텍스트 - 웹브라우저의 종류와 버전, 데이터 타입 등의 정보를 기술하고 있다. 3. 엔티티 바디 : POST 메소드를 이용하여 웹브라우저에서 웹서버로 데이터를 전송할 때 사용된다. - HTTP Response 리스폰스도 리퀘스트와 거의 동일한 구조이다. 리퀘스트 라인만 리스폰스 라인으로 바꾸면 구조는 같다. 1. 리스폰스 라인 : 버전, 상태코드, .. 2022. 5. 31.
[네트워크] URL(Uniform Resource Locator) :// : (생략 시 웰노운 포트 사용) / EX ) https:// naver.com / 경로 1 / 경로 2 ... (스킴) (호스트명) 스킴 : 웹브라우저가 웹서버와 통신하기 위한 프로토콜 호스트명 : 도메인 주소 2022. 5. 31.
[네트워크] DHCP(Dynamic Host Configuration Protocol) - TCP/IP 통신을 하려면 각 기기의 TCP/IP 설정이 바르게 되어 있어야 한다 -> 이 설정을 자동으로 해주는 녀석이 DHCP 이다. DHCP는 아래의 일련의 과정을 거쳐 TCP/IP 설정을 하게 된다. 2022. 5. 31.
[네트워크] DNS(Domain Name Service) DNS를 한 마디로 정의하자면 호스트명과 IP주소를 매핑하는 역할을 하는 프로토콜이다. TCP/IP 네트워크 아키텍처 기준 애플리케이션 계층에 위치하는 프로토콜이다. 호스트명 -> IP주소로 매핑하는 것을 "이름해석" 이라고 한다. DNS를 이용하려면 DNS 서버가 필요한데 DNS서버에는 호스트명과 IP주소가 맵핑되어 등록이 되어 있어야 한다. 이외에도 DNS서버에는 여러가지 정보들이 저장 될 수있다. 이렇게 서버에 저장되는 정보를 "리소스 레코드"라고 부른다. DNS서버는 루트를 정점으로 계층구조로 되어 있다. 주소 질의 과정은 아래의 그림과 같이 이루어 지게 된다.(재귀질의). 사용자가 호스트의 이름을 지정하면 -> DNS 리졸버가 루트에서 부터 질의 한다. 매번 이렇게 질의하는 것은 리소스를 많이 .. 2022. 5. 31.