레이블이 ComputerNetwork인 게시물을 표시합니다. 모든 게시물 표시
레이블이 ComputerNetwork인 게시물을 표시합니다. 모든 게시물 표시

2015년 10월 22일 목요일

OSI 7계층에 대한 정리

* 어플리케이션 계층

  어플리케이션 계층은 어플리케이션 프로토콜과 네트워크 어플리케이션으로 이루어져있다. HTTP, SMTP, FTP같은 프로토콜을 예로 들 수 있다.
  다른 종단 시스템의 어플리케이션과 정보 패킷을 교환하는데에 이 프로토콜을 사용하며, 이 계층에서의 패킷을 메시지라고 부른다.

* 트랜스포트 계층

  TCP와 UDP라는 프로토콜이 있으며, 어플리케이션 계층 메시지를 전달하는 역할을 한다.
  TCP의 경우 연결지향성 서비스를 제공한다. 곧, 전달보장, 흐름제어, 혼잡제어와 같은 기능을 제공하게 된다.
  UDP의 경우 비연결형 서비스를 제공하게 된다. 
  이 계층에서의 패킷을 세그먼트라고 부른다.

* 네트워크 계층

  네트워크 계층은 흔히 IP계층이라고도 부르며, 네트워크계층을 이용하는 모든 인터넷 요소는 IP프로토콜을 수행해야 한다는 데에 의의를 둔다. 네트워크 계층에서는 라우팅 알고리즘도 포함해야한다.
  이 계층에서의 패킷을 데이터그램라고 부른다.

* 데이터 링크 계층

  경로상에 한 노드에서 다른 노드로 패킷을 이동시키기 위해 네트워크는 링크 계층에 의존해야한다. 링크 계층에서 제공하는 서비스는 그 링크에서 채용된 특정 링크 계층 프로토콜에 의해 결정된다. 네트워크 계층이 TCP를 사용하던 UDP를 사용하던 관계없이, 데이터 링크 계층에서는 그 링크 계층의 프로토콜이 적용되게 되는 것이다.
  이 계층에서 사용하는 패킷을 프레임이라고 부른다.

* 물리 계층

  물리계층의 기능은 프레임 내부의 각 비트를 한노드에서 다음 노드로 이동 시키는 것이고 비트단위의 전송을 한다. 광 케이블, 꼬임상선등과 연관이 되어있다고 생각하면 된다. 
  
  

2015년 9월 24일 목요일

Computer Network - Application Layer 정리(91-108p) 15.09.24

Q. HTTP가 Stateless Protocol인 이유 -91p
HTTP는 요청이 들어왔을 때 응답을 주는 On-Demand 방식을 이용해 동작하는데,
요청된 웹페이지의 객체들을 되돌려 주는 식으로 구현된다.
여기서 말하는 객체는 HTML,자바 애플릿, JPEG, GIF와 같은 것들을 모두 포함하는 개념이다.

- 서버는 클라이언트에 대한 어떠한 정보도 저장하지 않는다.
- 특정 클라이언트가 몇초후에 같은 객체를 요청하더라도 클라이언트에 대한 정보를 저장 하지 않기에 다시 보내야 한다.
- 이러한 방식이 수천개의 TCP연걸이 가능하게 한다.

Q. 비지속연결, 지속연결이란? -91p
비지속 연걸(non-persistent connection) : 각 요구/응답쌍이 분리된 TCP연결을 통해 보내진다.
지속 연결(persistent connection) : 모든 요구와 해당하는 응답들과 같은 TCP연결상으로 보내진다.

Q. 비지속연결의 단점 -92p
1. 각 요청 객체에 대한 새로운 연결이 설정되고 유지되어야 한다.
  객체 별로 TCP연결을 생성해 버퍼를 할당해야 하므로 이게 서버에 과부하를 줄 수 있다.

2. 각 객체는 2RTT를 필요로 한다. (TCP 연결을 요청하는 RTT + 파일을 요청하는RTT)

Q. RTT(Round Trip Time) -93p
- 작은 패킷이 클라이언트로 부터 서버까지 가고, 다시 클라이언트로 되돌아가는 시간을 의미한다.

Q. HTTP 방식 필드(Method Field)의 종류- 95p
- Get : 서버에 어떠한 객체를 요청할 때 사용하며, HTTP에서 가장 많이 사용하는 방식이다.
- Post : 검색엔진에 검색단어를 넣는 것 처럼 사용자가 폼을 채워 넣을 때 사용하는 방식이다.
- Head : 서버가 요청을 받으면, 메시지로 응답하고 요청한 객체는 보내지 않는다. 디버깅을 할 때 많이 사용하는 방식이다.
- Put : 웹서버에 업로드를 할 때 사용

Q. 쿠키의 필요이유 -98p
쿠키는 비상태 HTTP위에서도 사용자 세션 계층을 생성하기 위해 이용된다.
- 서버가 접속을 제한하거나, 사용자에 따라 다른 콘텐츠를 제공하고 싶을 때 사용한다.
- 사용자가 서버에 쿠키 식별번호를 같이 전송해서, 그에 따라 다른 서비스를 제공받게 된다.

Q. 웹캐시의 기능 -101p
웹캐시(프록시 서버)는 기점 웹서버를 대신하여 HTTP의 요구를 충족시키는 개체이다.
자체의 저장 디스크를 가지고 있어서 최근 호출된 객체의 사본을 저장 및 보존한다.
Client - Proxy server - Origin Server 의 순으로 구성되게 된다.

일단 브라우저가 설정되면, 객체에 대한 각각의 브라우저 요청은 웹 캐시에 가장 먼저 보낸다.
웹캐시의 가장 가장 중요한 목적은 트래픽을 지역화 시켜서 Origin Server에 많은 부하가 걸리는 것을 막는 것이다.

Q. 조건부GET(Conditional get)이란?-105p
웹캐시에서 현재 가지고 있는 캐시가 최신의 것인지를 확인하기 위해 Origin Server로 보내서 최신의 것이 아니면
응답 메시지로 객체를 수신하게 된다.
최신의 것 이라면, 헤더만을 가진 빈 패킷이 도착해 최신의 것임을 확인할 수 있다.