Computer Network (18) 썸네일형 리스트형 Ch3-5) Connection-oriented transport: TCP 이제 TCP에 대해서 자세히 알아볼 시간이다.TCP OverviewOne-to-one point한명의 Sender와 Receiver 사이에서 데이터가 교환Reliable , in-order Byte stream패킷 단위로 데이터를 구분하지 않고 Byte 단위로 구분데이터를 끊어서 메시지로 처리하는지는 application layer 담당임.full duplex data양방향 통신 지원 : TCP 연결을 통해 양쪽에서 동시에 데이터 전송 가능MSS : maximum segment size 존재 (전송되는 segment의 최대 크기를 제한하는 term)Cumulative ACKs누적 ACK를 보냄 : 그 전의 모든 데이터는 수신 완료Pipeliningcongestion / flow control set wi.. Ch3-4) Principles of reliable data transfer 우선, Reliable data transfer의 목적을 살펴보자. Application을 사용하는 사용자 입장에선, 데이터가 한방향으로만 전송되고, 이미 데이터가 안정적으로 전송될것이라는 사실을 알고 있다.그러나, 설계하는 입장에서 reliable data transfer을 만들기 위해선, “양방향”의 노력이 필요하다. → 위와 같은 사진처럼, Unreliable channel을 통해 안전하게 데이터를 전송하는 과정을 추상화 하는 것이 바로 Reliable data transfer service의 목적이다.Architecture of Reliable data transfer: RDT 우선, 우리는 다음과 같은 4가지의 함수를 통해 rdt에 대해서 살펴볼 것이다.rdt_send() : Applicatio.. Ch3-3) Connectionless Transport: UDP UDP는 transport layer protocol이 할 수 있는 최소한의 기능들만 가지고 동작→ “best effort” service로, UDP segment가 lost / 다른 app에 전달돼도 알빠노UDP sender,reciever 간에 handshaking 과정도 없음⇒ 그럼 이런거 왜씀?no connection establish : Simple !바로 간단하기 떄문이다.UDP 하에서 application process가 data를 UDP에 전달하자마자 UDP는 data를 segment로 만들고, 바로 네트워크 계층에 전달연결 설정을 위한 delay가 존재하지 않음또한 Header size도 작음TCP는 헤더로 20바이트, UDP는 8바이트no congestion control원하는 만큼 빠.. Ch3-2) Multiplexing and Demultiplexing Multiplexing and demultiplexingMultiplexing in sendertransport header을 추가해 multiple socket에 data를 전달하는 과정Demultiplexing in recievertransport header info를 참고해 올바른 socket에 segment를 전달하는 과정 How multiplexing work : Conectionless multiplexing 우선, Host는 IP datagram을 받음각 Datagram은 source IP address와, destination IP address를 보유하고 있음각 Datagram은 개당 하나의 segment carry이때 각 segment가 source port #와 destina.. CH3-1) Transport Layer Service Transport layer은, 서로 다른 hosts들의 application processes들의 logical communication을 제공한다.Network Layer은, 서로 다른 hosts의 Logical communication을 제공한다. 그리고, 중요한 점은 Transport layer은 end-system 사이에서 작동한다는 것이다.Sender: “Segment”라고 불리는 단위로 메시지를 쪼개어 network layer로 전송한다.Segments는 네트워크 layer packet(Datagram)안에 캡슐화되어 전달됨이때 네트워크 라우터는 datagram field에 대해서 동작즉, datagram 안에 캡슐화된 Transport layer segment field는 검사 x .. Ch2-6) Video streaming and content distribution networks 현재, 비디오 스트리밍 traffic은 ISP traffic의 80%를 차지할 정도로, major consumer of Internet이다.→ 그렇다면, 우리는 어떻게 10억이 넘는 유저를 관리할 수 있을까? 단순히 하나의 Mega-server 형태는 아닐 것이다.→ 또한, 각 유저마다 Network에 대해 각각 다른 capability를 보유하고 있을 것인데, 이 간극을 어떻게 해결했을까?바로 distributed, application-level infrastructure을 이용하는 것이다 !우선, Video의 Streaming 원리에 대해서 살펴보자.Multimedia : Video비디오는, 초당 24~30개의 image가 연속적으로 나타나는 이미지의 연속이다.압축되지 않은 디지털 이미지는, 픽셀 .. Ch2-5) P2P application P2P architecture은, 항상 켜져있는 infrastructure 서버에 최소한으로 의존하고, 간헐적으로 연결되는 호스트 쌍(peer)이 서로 직접 통신하는 방식이다. 또한 네트워크에 연결되어있는 end system끼리 직접 연결되어 데이터를 주고받는다이때 P2P는 self scalability의 특성을 보유하는데, 이는 새로운 피어가 네트워크에 참여하면 새로 참여한 피어는 단순히 resource를 공유받는 역할만 하는 것이 아니라, 다른 피어들에게 데이터를 제공하는 역할도 동시에 수행한다이러한 특징 덕분에, 네트워크의 resource가 증가하면서도, 동시에 service demand와 provide capacity 또한 증가하는 self scalability의 특성을 갖게 된다.뿐만 아니라.. Ch2-4) Domane Name System : DNS 2.4 Domane Name System : DNS보통, 인터넷 호스트에서 호스트를 식별할 때 www.facebook.com과 같은 호스트이름(hostname)을 주로 사용한다.그러나, 이러한 hostname은 호스트의 위치정보를 거의 제공하지 않으므로, 라우터가 데이터를 전송하는데 어려움을 가지고 있다.또한, 가변 길이의 알파뉴메릭으로 구성되므로, 라우터가 인식하기 어렵다.→ 이러한 이유로 호스트들은 IP address라는 개념으로 식별된다.IP 주소란32bit으로 이루어진, hierarchical 위치정보이다. (4장에서 자세히 설명)Services that DNS Provide그렇다면, DNS란 무엇일까?앞서, 호스트들을 식별하기 위해 호스트이름 대신 IP address를 이용한다고 했다.이 차이를.. 이전 1 2 3 다음