옥탑방주인/네트워크 썸네일형 리스트형 신뢰성 있는 데이터 전송(Principles of Reliable Data Transfer) 상위 계층 entities에서 제공된 서비스 추상화는 신뢰성있는 채널을 통해 데이터가 전송되어진다.신뢰성 있는 채널(reliable channel)로 전송된 데이터 비트들은 충돌(corrupted)되거나 손실(lost)되지 않고, 모든 데이터들이 보낸 순서대로 전달된다. 이러한 작업은 신뢰할 수있는 데이터 전송 프로토콜 아래의 계층이 신뢰할 수 없다는 사실로 인해 어려워집니다(transport layer는 reliable channel이 있지만 network layer는 신뢰성없는 채널). 예를들어 TCP는 신뢰할수 없는 종단 간(end-to-end)네트워크 계층 맨 위에 구현되는 신뢰성있는 데이터 전송 프로토콜이다. 더 일반적으로는, 신뢰성있는 두개의 end-point통신 아래의 레이어는 싱글 물리 링.. 더보기 TCP,UDP enapsulation(캡슐화) & decapsulation 먼저 캡슐화의 시작은 Application layer에서 데이터를 Transport layer보냅니다.(e.g., http,ftp,smtp protocol) 그 후 Transport layer이 데이터를 받으면 전송방식에 따라서 UDP 또는 TCP의 헤더를 데이터 앞에 붙여서 Network layer로 보냅니다. Network layer에서는 시작주소와 도착지주소가 담긴 헤더를 UDP 또는 TCP 앞에 붙여서 Data link layer로 전송을 합니다. Datalink layer에서는 MAC주소와 trailer에는 CRC가 데이터 오류 검증을 위해 추가되 어 캡슐화가 끝나고, 이 캡슐화가 끝난 데이터를 Physical layer로 전송합니다. 그 후 목적지에 전송을 하고 목적지에서는 decapsulat.. 더보기 DNS(domain name system)란 무엇일까? 간단하게 설명하면 ip주소로 되있는 것을 domain name으로 바꿔주는 것이다.네이버를 접속할때 www.naver.com을 입력하여서 접속을 하여도 되지만네이버 서버 주소가 123.456.789.001로 되어있다고 가정하면주소창에 123.456.789.001을 입력하면 네이버로 바로 접속이 된다.(실제 네이버 ip는: 125.209.222.142 이다). (Domain ip address) 1. 동일한 사용자 시스템이 DNS응용프로그램의 사용자측을 실행합니다.2. 브라우저는 URL로 부터(www.naver.com) 호스트네임을 추출하고 dns 응용프로그램의 사용자측 호스트네임을 전달합니다.3. DNS 클라이언트는 DNS 서버에게 호스트네임을 포함한 쿼리를 전송합니다.4. DNS 클라이언트는 마침내 D.. 더보기 프록시 서버(Web Caching) Web Caching은 프록시서버라고도 불린다.프록시서버는 원래의 웹서버대신에 HTTP request를 만족하는 네트워크 개채(entity)이다. 웹 캐시는 자체 디스크 저장공간과 최근에 요청된 객채의 복사본을 저장하는 기능이 있다. js94.tistory.com 에 접속해서 객채를 요청하는 예제를 들 것이다. 1. 브라우저는 Web cache에 Tcp 연결을 설정하고 객체(object)에 대한 HTTP request를 Web cache에 보낸다.2. Web cache는 지역적(locally)으로 저장된 객체의 복사본이 있는지 확인한다. 만약 저장된 복사본이 있다면, Web cache는 HTTP 응답 메세지 내의 객채를 Client 브라우저에 반환한다. 3. 만약 Web cache에 객채(object)가.. 더보기 Cookies(유저와 서버간의 소통) HTTP 서버는 상태가 없다. 이것을 간단히 설명하자면 서버 디자인과 고성능 웹서버를 개발할수 있는 엔지니어는 천개이상의 TCP연결을 동시에 제어한다는 것을 의미한다. 그러나, 이것은 보통 웹사이트에서 유저를 식별할때만 바람직하다.왜나하면 서버는 유저의 접속을 제한하는것을 원하거나 유저의 신원 같은 기능의 content를 전달해주길 원한다.이러한 목적을 위해, HTTP는 Cookie를 사용한다. 오늘날의 대부분 상업용의 웹사이트(e.g, eBay, amazon...etc)들은 쿠키를 사용한다. Cookie는 4개의 컴포넌트를 갖고있다 1. HTTP 메세지의 반응에서의 cookie header line.2. HTTP 메세지 요청에서의 cookie header line.3. 쿠키파일은 유저의 종단시스템(en.. 더보기 TCP TCP는 종단간의 신뢰성있는 데이터 전송을 제공.TCP는 application layer에 더욱 쉽게 SSL보안 서비스를 제공.TCP는 데이터 전송을 목적지까지 보장하기 때문에 e-mail, 터미널 access control ... 에서 사용된다. 더보기 UDP UDP는 가벼운 전송 프로토콜이고, 최소한의 서비스만 제공한다. 비연결형이고 두개의 프로세스가 통신하기 전에 handshaking(연결확인)을 할 필요가 없다. 신뢰성없는 데이터 전송 서비스이고, UDP가 메세지를 전송했을때 수신프로세스에 메세지가 도착했는지에 대해 보장을 안한다. message는 수신프로세스에 제멋대로 도착한다.UDP는 혼잡제어 mechanism을 포함하고 있지 않는다. 더보기 Securing TCP TCP 또는 UDP는 어떤 보안도 제공하지 않는다.데이터는 전송프로세스의 소켓의 일부가 되고 이것들은 목적지 프로세스를 찾기위해 네트워크를 돌아다닌다.예를들면, 만약 전송프로세스가 패스워드를 원문(cleartext)으로 보안되지 않은 상태로 소켓에 포함시켜 전송한다고 하면, 원문(cleartext) 패스워드는 전송자와 수신자 사이의 모든 링크를 통해 돌아다닐 것이고, 가로채질(sniffed) 가능성이 있고, 어떤 링크들 사이에서 검색될수도 있다. 왜냐하면 privacy 와 보안문제는 많은 application에서 중요한 문제를 가져오기 때문이고, 인터넷 커뮤니티는 TCP를 강화시킨것을 개발했다, 이것을 Secure Sockets Layer(SSL)이라 부른다. SSL은 일반적으로 TCP가 하는일뿐만 아니.. 더보기 이전 1 다음