일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 2019카카오코테
- 백준
- 카카오코테
- 백준괄호
- 확인문제
- 백준스택
- 딥러닝
- 가운데를말해요
- BOJ1655
- 이것이자바다
- 코테
- 백준가운데를말해요
- java
- 백준평범한배낭
- 합성곱연산
- 스파르타코딩클럽
- 냅색알고리즘
- 윤곽선검출
- 운영체제
- 백준10828
- 컴퓨터비전
- 웹개발기초
- BOJ
- 코딩테스트실력진단
- 이것이자바다9장
- 백준9012
- KT포트포워딩
- 이것이자바다확인문제
- 코드트리
- 백준온라인저지
- Today
- Total
목록🌐 네트워크 (17)
코딩하는 락커

혼잡제어에 대한 접근법 종단간의 혼잡제어 네트워크 계층은 혼잡제어 목적을 위해 트랜스포트 계층에게 어떤 직접적인 지원도 제공하지 않음. 네트워크의 혼잡의 존재는 단지 관찰된 네트워크 행동에 기초파여 종단 시스템이 추측해야함. ex) 타임아웃 / 3중 중복 ACK 네트워크 지원 혼잡제어 네트워크 계층 구성요소가 네트워크 안에서 혼잡 상태와 관련하여 송신자에게 직접적인 피드백을 제공함. 라우터가 각각의 출발지에게 처리하는 패킷의 패킷 헤더 안에 어떻게 출발지의 전송률을 증가시키거나 감소시킬 것인지에 관한 정보를 넣어 보내줌. 3.6 TCP 혼잡제어Congestion Control IP 계층이 네트워크 혼잡에 관해서 종단 시스템에게 어떠한 직접적인 피드백을 제공하지 않으므로 TCP는 종단간의 혼잡제어를 사용해..

흐름 제어flow-control 애플리케이션이 데이터를 읽는 속도가 비교적 느리다면, 송신자가 점점 더 많은 데이터를 빠르게 전송함으로써 연결의 수신 버퍼에 아주 쉽게 오버플로를 발생시킴. 흐름 제어 서비스flow-control-service: TCP가 송신가자 수신자의 버퍼를 오버플로 시키는 것을 방지하기 위해서 애플리케이션에게 제공하는 서비스. (수신자 제어) 혼잡 제어 서비스congestion-control-service: TCP 송신자가 IP 네트워크에서 혼잡 때문에 억제되는 것. (송신자 제어) 수신자는 수신 윈도우(receive window, rwnd)라는 변수를 유지하여 흐름제어 제공. rwnd(버퍼의 여유공간) = RcvBuffer - |LastByteRead - LastByteRcvd| ..

3.5 연결지향형 트랜스포트 TCP TCP 연결 connection-oriented: 애플리케이션 프로세스가 데이터를 다룬 다른 프로세스에게 보내기 전에, 두 프로세스가 서로 를 먼저 해야 함. full-duplex: 호스트 A의 프로세스와 호스트 B의 프로세스 사이에 TCP 연결이 있다면, 애플리케이션 계층 데이터는 B에서 A로 흐르는 동시에 A에서 B로 흐를 수 있음. point-to-point: 단일 송신자와 단일 수신자 사이에 데이터가 전송됨. reliable-in-order: 데이터라 전송된 순서대로 신뢰 가능하게 데이터를 보냄. piplined: 한꺼번에 여러 데이터를 전송함. send & receiver buffer: 모든 호스트가 send buffer와 receiver buffer를 갖고 ..

파이프라인된 신뢰적 데이터 전송 프로토콜 이용률Utilization: 전체 시간 중 sender가 사용하는 시간 stop-and-wait 프로토콜은 이용률이 낮다는 문제가 있음 예시 stop-and-wait 프로토콜을 쓰는 두 종단 시스템이 있음. 두 종단 시스템 사이의 광속 왕복 전파 시간(RTT)는 30msec이라고 가정. 1Gbps(초당 10^9비트) 전송률(R)을 가진 채널에 의해 연결되어 있다고 가정. 헤더 필드와 데이터를 모두 포함하여 패킷당 크기는 1000바이트(8000bit)라고 가정. 이때 1Gbps 링크로 패킷을 실제 전송하는데 걸리는 시간은 L/R이므로 8000bits/packet / 10^9bits/sec = 8microseconds임. 그러면 송신자는 ACK패킷을 t = RTT +..

3.4 신뢰성 있는 데이터 전송의 원리 신뢰적인 데이터 전송 프로토콜의 의무realiable data transfer protocol 신뢰적인 채널에서는 전송된 데이터가 손상되거나 손실되지 않음. 모든 데이터는 전송된 순서대로 전달됨 이것은 TCP가 인터넷 애플리케이션에게 제공하는 서비스 모델 신뢰적인 데이터 전달 프로토콜의 구축 완벽하게 신뢰적인 채널 상에서의 신뢰적인 데이터 전송: rdt1.0 송신측 rdt_send(data) 이벤트에 의해 상위 계층으로부터 데이터를 받아들이고 make_pkt(data) 이벤트에 의해 데이터를 포함한 패킷 생성. udt_send(packet) 이벤트에 의해 패킷을 채널로 송신함. 수신측 rdt_rcv(packet) 이벤트에 의해 하위 채널로부터 데이터를 받아들이고 e..
3.1 트랜스포트 계층 서비스 및 개요 트랜스포트 계층 프로토콜은 서로 다른 호스트에서 동작하는 애플리케이션 프로세스 간의 논리적 통신Logical communication을 제공함. 논리적 통신은 애플리케이션의 관점에서 보면 프로세스들이 동작하는 호스트들이 직접 연결된 것처럼 보인다는 것을 의미함. 트랜스포트 계층 프로토콜은 네트워크 라우터가 아닌 종단 시스템에서 구현됨. 송신 측 트랜스포트 계층은 송신 애플리케이션 프로세스로부터 수신한 메시지를 트랜스포트 계층 세그먼트Segment인 트랜스포트 계층 패킷으로 변환함. 이러한 변환은 애플리케이션 메시지를 트랜스포트 계층 세그먼트로 만들기 위해 더 작은 조각으로 분할하고, 각각의 조각에 트랜스포트 계층 헤더를 추가함으로써 수행됨. 수신측에서 네트워크 계층..
2.7 소켓 프로그래밍 : 네트워크 어플리케이션 생성 일반적인 네트워크 애플리케이션은 2개의 서로 다른 종단 시스템에 존재하는 클라이언트 프로그램과 서버 프로그램으로 구성됨 이들 두 프로그램을 수행하면 클라이언트와 서버 프로세스가 생생됨 두 프로세스가 소켓으로 읽고(Read), 소켓에 쓰기(Write)를 통해서 서로 통신함 개발 단계 동안 개발자가 우선해야 할 결정 중 하나는 그 애플리케이션이 TCP를 이용하는지, UDP를 이용하는지에 대한 것임 TCP: 연결지향성 서비스이고 신뢰적 바이트 스트림 채널을 제공하며 이 채널을 통해 데이터가 두 종단 시스템 사이를 흐르게 함 UDP: 비연결형이고 한 종단 시스템에서 다른 곳으로 데이터를 독립적인 패킷으로 만들어서 보내며 전송에 대한 보장은 하지 않음 TCP ..

2.1 네트워크 어플리케이션의 원리 네트워크 어플리케이션 개발의 중심은 다른 종단 시스템에서 동작하고 네트워크를 통해 서로 통신하는 프로그램을 작성하는 것. 라우터나 링크 계층 스위치와 같이 네트워크 코어 장비에서 실행되는 소프트웨어를 작성할 필요 없음. 네트워크 어플리케이션 구조 네트워크 구조 애플리케이션 구조 애플리케이션 구조: 애플리케이션 개발자에 의해 설계되고 애플리케이션이 다양한 종단 시스템에서 어떻게 조직되어야 하는지를 지시함. 클라이언트-서버 구조 서버Server: 항상 켜져 있는 호스트. 클라이언트라는 다른 많은 호스트의 요청을 받음 클라이언트Client: 가끔 혹은 항상 켜져 있을 수 있는 호스트. 클라이언트-서버 구조에서 클라이언트는 서로 직접적으로 통신하지 않음 서버는 고정 IP주소라..