지난 시간 UDP를 relable한 전송을 위해 설계를 했는데요. 이번에는 TCP를 직접 다뤄보는 시간을 가졌습니다. 1. TCP TCP/IP는 Vincent Cert, Robert Kahn이 만들었습니다. 끝없는 공방 끝에 현재 미국 주도의 표준이 되었죠. 처음에는 TCP/IP가 하나의 프로토콜이었습니다. 즉, 한 세트로 설계된 프로토콜이었습니다. 하지만, 기능이 방대해지다보니 분해해서 부르고 있습니다. TCP 프로토콜은 트랜스포트레이어 프로토콜이고, IP는 네트워크 레이어 프로토콜이 되었습니다. 1-1. IEEE Transactions on Communications Technology [1974] 엄청 역사가 길고, 체계적으로 유명한 저널입니다. 이 저널에 처음으로 TCP/IP 논문이 소개되었습니다..
1. 소켓 클래스 import java.net.* 패키지에서 소켓프로그래밍 관련된 API를 제공하고 있습니다. 해당 패키지에는 소켓패키지가 정의가 되있습니다. client 소켓에는 accept()가 있고 server 소켓에서는 ServerSocket이라는 것에서 지원하고 있습니다. 참고로 UDP 소켓은 DatagramSocket을 사용한다. 1-1. java.net.Socket 클라이언트 소켓을 얻을 수 있습니다. 다음과 같은 기능을 사용할 수 있는데요. Socket(String host, int port) : 소켓 객체를 만들 수 있습니다. InputStream getInputStream() OutputStream getOutputStream() close() 1-2. java.net.ServerSoc..
1. Socket 소켓이란 애플리케이션 프로세스와 end to end 프로토콜 사이에 문이 되는 요소 입니다. (=인터페이스) 애플리케이션 데이터를 트랜스포트 레이어로 내려주는 문이 되는 것입니다. 애플리케이션 개발자가 네트워킹 지원하는 애플리케이션을 개발하려고 한다면 소켓을 통해 데이터를 어떻게 전달할지 구현할 줄 알아야 합니다. 트랜스포트 레이어로 내려주는 소켓을 활용하는 방법만 알면 원하는 리시버한테 데이터를 전송할 수 있게 되는 것입니다. 즉 소켓은 네트워크와 네트워크 사이의 인터페이스가 됩니다. 1-1. 네트워크하는 데 필요한 인자들 네트워크를 하는 모든 호스트 머신들은 IP주소를 갖게 됩니다. IP주소를 가지고 원하는 목적지까진 잘 전달될 수 있어요. 하지만 우리가 최종 목적지는 호스트가 아니..
컴퓨터 네트워크 10일차 : transport layer rdt / 9일차 복습 컴퓨터 네트워크 9-2일차 : 신뢰 높은 데이터 전송, rdt 버전 썸네일은 여유로울 때 만들어 추가하도록 하겠습니다 주륵 컴퓨터 네트워크 9-1일차 : transport layer, UDP, (de)multiplexing, TCP 썸네일은 여유. tksgk2598.tistory.com 드디어 10일차 돌파!!!! 11일차로 돌입합니다 ^^ 이제 수업 3번만 더 지나가면 중간고사네요 ㅠㅠ +소켓프로그래밍 과제까지 있다는 소식 흑흑 1. Pipelined protocol rdt3.0을 거쳐 reliable한 채널을 만들었으니 이제부턴 rdt3.0에서 어떻게 빠르게 데이터를 보낼 수 있을지 성능면을 고려해보도록 하겠습니다. 지난..
컴퓨터 네트워크 9-2일차 : 신뢰 높은 데이터 전송, rdt 버전 썸네일은 여유로울 때 만들어 추가하도록 하겠습니다 주륵 컴퓨터 네트워크 9-1일차 : transport layer, UDP, (de)multiplexing, TCP 썸네일은 여유로울 때 만들어 추가하도록 하겠습니다 주륵 컴퓨터 네트워 tksgk2598.tistory.com 싸강으로 들었던 지난 강의 리뷰 디스커션을 진행한 후 본 강의를 들었습니다 : ) 오늘 내용은 9-2일차 복습한다고 생각하려고용! 0. Review Discussion 0-1-1) transmission delay 구하기 transmission delay는 데이터 처리에 걸리는 시간입니다. 즉, 패킷의 크기와 링크의 속도에 영향을 받아 지연되는 시간입니다. 보내고 싶은..
컴퓨터 네트워크 9-1일차 : transport layer, UDP, (de)multiplexing, TCP 썸네일은 여유로울 때 만들어 추가하도록 하겠습니다 주륵 컴퓨터 네트워크 8일차 : DNS, P2P 어플리케이션, DASH, CDN 썸네일은 여유로울 때 만들어 추가하도록 하겠습니다 주륵 컴퓨터 네트워크 7 tksgk2598.tistory.com CHAPTER 3 TRANSPORT LAYER PART2 시작입니다~! 1. reliable한 데이터 전송의 원리 transport layer에서 신뢰성있는 데이터를 전송해주는 것은 네트워크 관점에서 굉장히 중요한 주제입니다. sending process가 데이터를 보내기 위해서 소켓을 통해서 데이터를 보냅니다. 만약 transport layer 부분이 r..
컴퓨터 네트워크 8일차 : DNS, P2P 어플리케이션, DASH, CDN 썸네일은 여유로울 때 만들어 추가하도록 하겠습니다 주륵 컴퓨터 네트워크 7일차 : HTTP 프로토콜, 쿠키, 웹캐시, 이메일, DNS 컴퓨터 네트워크 6일차 : 어플리케이션 구조, 소켓, 어플리케이션 레 tksgk2598.tistory.com 8일차에 이어 바로 9일차 공부 시작합니다 ㅠ CHAPTER 3 TRANSPORT LAYER 시작이네요~! 1. transport layer service 1-1. logical communication 다른 호스트에서 수행되는 애플리케이션 프로세스 간의 logical communication을 제공합니다. logical communication이란 서로 통신하는 프로세스들이 물리적으로 / ..
컴퓨터 네트워크 7일차 : HTTP 프로토콜, 쿠키, 웹캐시, 이메일, DNS 컴퓨터 네트워크 6일차 : 어플리케이션 구조, 소켓, 어플리케이션 레이어 프로토콜, HTTP connection 컴퓨터 네트워크 5일차 : Throughput, Layering, ISP, Network Security 0. Review Discussion 0-1) 서킷스위.. tksgk2598.tistory.com 7일차에 이은 8일차 공부 시작합니다~! 저번 시간 DNS에 이어 적어볼게요~ 1. DNS 서버 1) 루트 네임 서버 루트 네임 서버는 전세계 13곳에 존재합니다. 2) 탑 레벨 도메인 (TLD) 서버 com, org, net, edu와 같은 탑 레벨 도메인을 찾아주는 서버 입니다. 3) Authoritative D..