728x90
반응형

컴퓨터과학/0 +컴퓨터 네트워킹 13

[컴퓨터 네트워킹] 4-3) TCP Congestion control

TCP Congestion control Too many sources sending too much data too fast for network to handle. -> 네트워크를 공유하고 있는 노드들이 서로 양보해야함… End to end Network-assisted AMID approach Additive increase: 천천히 증가 Multiplicative decrease: 반으로 감소 Congestion window(cwnd) 송신측이 ack 없이 한번에 데이터를 보내는 크기(congestion contro을 위해 계속 변함) TCP Receive window(rwin) 수신측이 ack없이 한 번에 data를 받을 수 있는 크기 상대방에게 자신이 처리 가능한 buffer 크기 만큼을 wi..

[컴퓨터 네트워킹] 4-2) TCP Retransmit(TCP 재전송)

TCP fast retransmit 송신자가 3개의 중복된 ACK를 받는다면 가장 작은 seq num의 segment를 전송한다. TCP 재전송 발생 조건 Timeout events Duplicate acks TCP Timeout value 설정 방법 RTT보다 길어야한다. SampleRTT ACK응답 까지 걸린 시간 EstimatedRTT SampleRTT의 평균 값 EstimatedRTT = (1-a) x EstimatedRTT(이전값)+ a x SampleRTT(현재값) Timeout Interval = EstimatedRTT + “Safety margin” 3 way handshake RST Flags: RST역할 e.g) Client가 Server에게 80port연결 할래! Server가 Cli..

[컴퓨터 네트워킹] 4-1) TCP(Transmission Control Protocol)

Keyword - 연결지향(connection-oriented): 송/수신기 사이의 물리적인 연결이 아닌 논리적인 연결을 의미하는 개념 - 핸드셰이크(handshake): 통신 관련 분야에서 둘 이상의 장치가 연결/단절을 위해 선행하는 약속된 협상 과정 - 최대 세그먼트 크기(Maximum Segment Size, MSS): TCP가 세그먼트 한 개로 보낼 수 있는 최대 데이터 크기 - 전이중 통신(full-duplex): 송신과 수신이 동시에 가능한 통신 방식(참조: https://ko.wikipedia.org/wiki/이중통신) - 혼잡 윈도우(congestion window): 송신측에서 ACK 수신 없이 연속적으로 전송할 수 있는 최대 데이터 양 - AIMD (Additive Increase an..

[컴퓨터 네트워킹] 3-5) Packet Retransmission method(패킷 재전송 방법)

인터넷 프로토콜을 처음 개발할땐 서로 신뢰할 수 있는 대상자와 통신 했기 때문에 신뢰성을 고려하지 않았다. 하지만 현재는 그러하지않다... ㅠㅠ 그러면 신뢰성있는 데이터를 전송하기 위해서는 어떠한 방법을 써야할까?? 신뢰성 있는 데이터 전송의 원리 신뢰성 있는 채널을 통한 서비스 추상화 손상 및 손실 없는 데이터 순차적인 데이터 전송 Service of TCP Error type and solution 데이터를 전송하다보면 다양한 원인으로 패킷이 손실되거나 망가질수 있다. 이러한 문제를 해결하기 위해 에러를 검출하고 다음과 방법을 도입했다. -> Packet Retransmission method 패킷 재전송 방법은 다음과 같다. ARQ(automatic repeat request) Stop and wa..

[컴퓨터 네트워킹] 3-4) UDP 그리고 checksum

UDP란? User Datagram Protocol의 약자 이다. UDP의 특징은 다음과 같다. No Frill, Bare bones 최소한의 필요 기능만 수행 -> Simple (ip, port 지정) 비연결형(Connectionless service) 오류 검출 기능(재전송, 복구 없음) 비신뢰성 Faster than TCP DNS, SNMP(간이 망 관리 프로토콜: 네트워크 모니터링 목적으로 네트워크 관리에서 주로 사용) UDP Segments 는 다음과 같다. Length: header를 포함한 bytes UDP의 오류검출 기능인 Checksum에 대해 알아보자 Checksum Sender 16bit 정수형 전송 전 checksum에 0이 저장되어 있음 Source port, dest port, ..

[컴퓨터 네트워킹] 3-3) Port와 Socket이란?

Port? 어플리케이션은 각 port가 할당된다고 우린 배웠다.. 다음 세그먼트를 보면 알 수 있다. port로 구분한다고는 하지만 다음과 같은경우가 발생하면 어떻게 될까...? How distinguish between Server application’s process#1 and process#2…? 이러한 문제를 해결하기위해 Socket의 등장..! Socket 프로세스는 소켓(door)을 통해서 데이터를 주고 받는다. 만약 Client#1과 Client#2가 Server와 동시에 통신하려고 한다면..? TCP Connection oriented에 의하여 connection과정에 분류된다…(client ip가 다르다)

[컴퓨터 네트워킹] 3-2) 전송계층이란?

전송계층: Transport Layer 프로세스간 논리적인 연결을 담당하는 계층 어느 프로세스에 데이터를 전달? TCP, UDP 컴퓨터에는 많은 프로세스가 존재함. IP로 구분한다.(Network Layer) 송신자(Sender) Application 메시지를 Segments로 분할 Segment는 network layer를 통과 수신자(Receiver) Segments를 메시지로 재조합 메시지는 Application layer를 통과 TCP vs UDP Multiplexing Multiplexing at sender 전송계층의 기본 기능!! Network를 통해 다수의 어플리케이션의 데이터 패킷을 보냄 Outlook, Chat program, discord Demultiplex an receiver 다..

[컴퓨터 네트워킹] 2-4) SSL/TLS와 DNS

인터넷은 보안을 염두하고 만들지 않음 시간에 지남에 따라 보안문제가 발생하여 SSL/TLS를 추가함 SSL/TLS 원리 https란? https = http + ssl/tls 이다. 네이버 ip주소를 몰라도 우리는 naver.com에 접속 할 수 있다!! 그이유는 dns가 존재하기 때문..!!!!!!!!!!!!!!!!!! DNS(Domain Name System) •Ip address를 host name으로 변환 •구글과 같은 대형 사이트는 여러 개의 서버를 갖고 있는데 이러한 과정을 google.com만 입력하면 DNS가 알아서 알맞은 ip로 연결 해준다. DNS의 분배와 계층적DB 사용자가 Google.com에 접속하는 메커니즘 1.사용자는 Root 서버에 .com DNS서버를 찾아 달라고 요청 2...

[컴퓨터 네트워킹] 2-3) WEB과 HTTP 기초 지식

WEB •Web page는 보통 HTML, JEPG, java applet, audio file…로 구성되어 있다. •Html파일은 각각 url의 주소를 갖고 있다. •www.105.com/minkai/pic.gif •호스트 이름 경로 이름 HTTP •HyperText Transfer Protocol •Web 어플리케이션 계층 프로토콜이다. •Client/Server 모델 •TCP(전송계층)에 기초를 두고 있다. http response codes 200 : OK 301 : Move Permanently 400 : Bad Request 404 : Not found 505 : HTTP Version Not supported REST(REpresentational State Transfer)의 특징 클라이언..

728x90
반응형