1. Protocol
HTTP | web protocol, port 80, 주로 TCP(최근 UDP) |
FTP | file 전송, TCP/IP |
SMTP | mail 전송, port 25, TCP, POP3와 IMAP을 사용 |
POP3 | TCP/IP를 이용해 mail을 가져오고 지움 |
IMAP | TCP/IP를 이용해 mail을 가져옴 |
DNS | Domain name-IP 관리, UDP |
2. Socket process
process마다 전용 socket을 생성하여 data를 주고 받음, port # 할당
IP address로 Host를 찾고 prot #로 process에 data를 전달
3. Application-service requirement
Data integrity | reliability, loss tolerate |
Timing | row delay, high delay |
Throughput | large data, small data |
*throughput = transfer size/transfer time
*transfer time = RTT + transfer size/min bandwidth
4. Web
HTTP 사용, base HTML + objects로 구성, 각 objcet는 URL로 접근
4.1. HTTP
Non persistent HTTP | file마다 TCP connection ESTAB and CLOSE |
HTTP 1.0 | TCP connection 유지, 모든 file 전송이 완료되면 CLOSE |
HTTP 2.0 | TCP connection 유지, request ALL & response ALL하고 CLOSE |
4.2. HTTP architecture
Single Threaded | 한번에 하나씩 |
Multi Threaded | thread를 생성해서 file을 보내줌 |
Thread Pool | request host마다 pool 생성해서 thread로 file 보내줌 |
4.2. Cookie
local에 서버에서 받은 data를 브라우저에 저장한 파일
서버에 request할 때, cookie 얹어서 request, 속도가 증가
브라우저에 user 개인 정보가 저장되서 보안에 취약
4.3. Web caching / Proxy server
throughput을 개선하기 힘들 경우, LAN에 proxy server를 설치해서 개선
link를 직접 교체하는 것에 비해 저렴
5. P2P
client끼리 file을 주고 받는 구조
client - server | P2P |
d > max{ NF/u, F/d_min } | d > max{ F/u, F/d_min, NF/(u+u_others) } |
*N: 인원, F: file, u: upload, d: download
6. E-mail
port 25, hand shaking -> transfer -> closing, message는 7-bit ASC2, push 기반
POP3와 IMAP을 사용
7. DNS
IP마다 domain name을 할당하고 관리해주는 서버
8. CDN
content distribution network, video같은 무거운 file의 사용 증가로 사용자 근처에 설치하는 proxy server
8.1. video encoding
spatial | frame 내 비슷한 색 압축 |
temporal | 이전 frame과 다른 부분만 전송 |
8.2. DASH
dynamic adaptive streaming over HTTP
server | video를 chunk로 쪼갬, 다른 rate로 encoded된 URL 제공 |
client | 주기적으로 bandwidth 조절, 한번에 chunk 하나씩 요구 different config rate 선택 가능, when, ecoding rate, where 선택 TCP/UDP 선택 sender buffer/receiver buffer frame/group of picture |
8.3. Youtube
8.4. Netflix
'대학교 > 네트워크' 카테고리의 다른 글
[CS/네트워크] 6. Mobile (0) | 2021.12.12 |
---|---|
[CS/네트워크] 5. Link layer (0) | 2021.12.12 |
[CS/네트워크] 4. Network layer (0) | 2021.12.12 |
[CS/네트워크] 3. Transport layer (0) | 2021.12.11 |
[CS/네트워크] 1. Overview (0) | 2021.12.11 |