목록CS/Network (12)
공부기록
Web Caching 웹 캐시 (proxy server)는 원래 웹 서버 대신에 HTTP 요청을 처리해 줄 수 있는 요소이다. 웹 캐시는 자신의 저장소에 요청 받게될 자원들의 복사본을 저장해 뒀다가 요청이 오면 대신 응답하게 된다. 먼저 다음은 웹 캐시가 중간에 있을 때, http://www.someschool.edu/campus.gif객체에 대한 요청을 처리하는 과정이다. 브라우저가 웹 캐시와 TCP 통신을 성립하고, 해당 객체에 대한 요청을 보낸다. 웹 캐시는 자신에게 해당 객체가 있으면 HTTP 응답 메세지와 함께 보내게 된다. 웹 캐시에 해당 객체가 없다면, 웹 캐시는 본래의 서버에 TCP 연결을 한 뒤 해당 객체에 대한 HTTP 요청 메세지를 보내게 된다. 그렇게 하여 본래의 서버로 부터의 HT..
네트워크 OSI-7-Layer OSI 7 계층의 종류와 특징, 그리고 데이터 이름 Application Layer application layer의 특징 protocol? HTTP의 정의 HTTP의 특징 HTTP의 장점 HTTP Method Cookie REST DNS의 정의와 제공하는 서비스 DNS DB 분산된 이유 URL을 쳐서 웹사이트 서핑하는 과정 Transport Layer Transport 계층의 특징 Multiplexing & Demultiplexing UDP의 특징 UDP의 패킷오류발견 기법 RDT X.X 버전별 각각의 특징 Pipleline Protocold의 특징과 종류 TCP의 특징 TCP의 RDT TCP의 Connection Management TCP의 Congestion Contr..
REST? (Representational State Transfer) REST는 웹에서 데이터를 전송하고 처리하는 방법을 정의한 인터페이스를 말한다. 모든 데이터 구조와 처리 방식은 REST에서 URL을 통해 정의되며, 그래서 매우 직관적으로 이해하기 쉽다. 이는 대중에게 서비스를 제공할 때 좀 더 쉽게 다가갈 수 있도록 하는 요소이기도 하다. REST 개념 HTTP URI(Uniform Resource Identifier)를 통해 자원(Resource)를 명시하고, HTTP Method (POST, GET, PUT, DELETE) 를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것을 의미한다. REST는 자원 기반의 구조 (ROA, Resource Oriented Architectur..
아래는 사용자가 웹 브라우저에 URL을 치고 접속했을 때 일어나는 일이다. 사용자가 웹 브라우저를 통해 찾고 싶은 웹 페이지의 URL 주소를 입력함 사용자가 입력한 URL 주소중 도메인 네임 부분을 DNS 서버에서 검색한다. DNS 서버에서 해당 도메인 네임에 해당하는 IP 주소를 찾아 사용자가 입력한 URL 정보와 함께 전달함 웹 페이지 URL 정보와 전달받은 IP 주소는 HTTP 프로토콜을 사용하여 HTTP 요청 메세지를 생성한다. 이렇게 생성된 HTTP 요청 메세지는 TCP 프로토콜을 사용하여 인터넷을 거쳐 해당 IP 주소의 컴퓨터로 전송된다. 서버에 도착한 HTTP 요청 메세지는 HTTP 프로토콜을 사용하여 웹 페이지 URL 정보로 변환된다. 웹 서버는 도착한 웹 페이지 URL 정보에 해당하는 데..
Application Layer? OSI 계층들과 응용 프로그램을 인터페이스 한다. 응용 계층의 프로토콜들은 다음을 정의한다. 교환되는 메세지의 유형 (request, response message) syntax : 다양한 메세지 유형들의 문법 메세지 안에 있는 필드와 그 필드들이 어떻게 표현되는지 symentic : 필드들의 의미 필드의 정보들이 무엇을 의미하는가 timing : 언제 그리고 어떻게 프로세스가 메세지를 보내고 메세지에 반응하는지 Web and HTTP 개요 웹페이지는 오브젝트들로 구성되어 있다. 오브젝트들은 HTML, JPEG, JAVA applet, audio file,... 등등이 될 수 있다. 각 오브젝트는 URL에 의해 참조될 수 있다. URL (Uniform Resource L..
Link Layer? Link 계층은 한 노드로부터 물리적으로 인접한 다른 노드로 데이터그램을 전송해야하는 책임을 가지고 있다. 데이터그램은 다른 연결들을 통해 다른 link 프로토콜들에 의해 전송되어진다. 각 link 프로토콜은 다른 서비스를 제공한다. Link Layer Service 데이터그램을 프레임으로 캡슐화 하고, 헤더를 더한다. 공유되어질 수 있는 채널이라면 접근한다. 출발지와 도착지를 식별하기 위해 프레임 헤더에 "MAC" 주소가 사용된다. 인접한 노드 간에 신뢰성 있는 전송을 해준다. Link layer는 NIC (Network Interface Card)라고 하는 어뎁터에 구현된다. Error Detection and Correction Parity Checking Single Bit ..
Network Layer? 송신 호스트에서 수신 호스트로 세그먼트를 전송한다. 송신측에서는 세그멘트를 데이터그램으로 캡슐화한다. 수신측에서는 세그먼트를 transport 층으로 보낸다. 네트워크 층의 프로토콜들은 모든 호스트와 라우터에 있다. 라우터는 자신이 보내는 모든 IP 데이터그램안에 있는 헤더 필드를 검사한다. 네트워크 층의 주요 기능 Forwarding 패킷을 라우터의 입력에서 적절한 라우터의 출력으로 보낸다. 하나의 경로로 보내는 행위이다. Routing 패킷의 출발지에서 목적지까지의 적절한 경로를 결정한다. 라우팅 알고리즘을 이용한다. 패킷의 경로를 계획하는 행위이다. 연결 성립 (VC) 데이터그램이 흐르기 전에, 말단의 호스트들과 그 사이의 라우터들은 Virtual Connection을 수..
Transport Layer? 서로 다른 호스트에서 동작하는 프로세스 간의 논리적 의사소통을 제공한다. transport 프로토콜들은 말단에서 작동한다. 송신 측에서는 앱 메세지를 세그먼트로 나누어 network 레이어로 보낸다. 수신 측에서는 세그먼트들을 메세지로 합쳐 어플리케이션 레이어로 보낸다. network layer : 호스트들 간의 논리적 연결 tranport layer : 프로세스들 간의 논리적 연결 Multiplexing & Demultiplexing Multiplexing at sender 여러개의 소켓들 부터의 데이터를 처리하고, transport 헤더를 추가한다. 이는 후에 demultiplexing을 위해 쓰인다. Demultiplexing at receiver 받은 세그먼트들을 헤..