CS log
230921 ch2 p9~29 본문
질문 : How many sockets are open at the same time in a client/server host when using each of three HTTP types above? 답?
1. Addressing processes
- A process in the Internet can be identified by
- IP address of the host where the process is running, commany address 집주소
- OS가 sw적으로 세팅한 주소. IP layer. 타고 나가는 건 nw interface 카드 (IP:카드 = 다대일)
- port number , URL = nw를 다니는 parameter, well-known // client는 그 때 그 때 os에게 받아서 내꺼를 서버에 알려주면서 보냄)
- port # assigned to the process in the host, nw에서 유의미, worker's name 누구한테 온건지 (!= PID process ID local에서만 유의미)
- IP address of the host where the process is running, commany address 집주소
2. Transport service requirements : common apps
- real-time audio/video : delay에 민감. 실시간 축구 경이
- stored audio/video : 넷플릭스는 loss, 즉 화질에 민감 -> tcp 사용
- application이 안되면 : warning massage / app이 압축해서 보냄 / 버퍼링 등의 방법으로 해결
3. Internet transport protocols services
Basic service of Transport layer protocols is finding a process (socket) for the process-to-process communication.
1) Services that TCP supports:
[TCP] ---- internet IP(no guaranteed, non reliable service, best effort service) ---- [TCP]
- reliable data transfer (rdt) : no-loss and in-order data delivery via connection-oriented setup(buffer이 존재, loss가 생기면 다시 보내려고 저장), Checksum for error detection, Sequence/ACK numbers, timeout, Retransmission(retx)
- connection-oriented : setup, 양 TCP 간 통신 약속
- Congestion/Flow control adjust a sending TCP's sending rate not to avoid buffer overflow at routers in the network/receiving TCP's buffer at a receiver hosts respectively. router's TCP's receving buffer가 넘치지 않도록 보내는 애한테 천천히 보내라고 함.
2) Services that UDP(TCP 대신 UDP 사용하겠다!) supports:
- Nothing like IP which provides a best-effort service
- 단, UDP does (de)multiplexing (finding a process) and error detection (Internet checksum)후 버리기, real-time streaming
- smart 한 app이면 UPD :) (http v3)
- why bother? why is there a UDP? periodically question/response, one-time transaction, smart application
- why does DNS(URL-IP 세트 가져오는 DB) switch to TCP? netflix, zone transfer over TCP(대용량), Q/R over UDP
4. CH2 Application Layer
4. HTTP protocol (ver1/2/3) over TCP (or UDP)
www.someschool.edu/someDept/pic.git
host name : directory 안에
path name : object 있다.
즉, base HTML 안에 n개의 URL(object의) 이 있다.
- Base-html contains text and URLs of objects included in the html file
- Each object (including base-html file) is separately requested/received by using a separate HTTP request/response message.
- For supporting web service, HTTP/1.1 usually uses TCP.
5. Overall HTTP(1.1 version for browsing) Operation
1) 3 types of TCP-based HTTP :
- non-persistent TCP conn. (w/o parallel) : 동시에 100 clients (=TCP sessions) 여러 명이 share 가능
- non-persistent TCP conn. with parallel : at most one object sent over TCP connection
------------- object마다 다른 TCP 연결, 하나 연결하면 the other object는 끊음
3. persistent TCP conn. : multiple objects can be sent over single TCP
2) RTT 계산하기
- How many RTTs are required to download a web page that includes N objects when using each of three HTTP types above? (1(=base html) + n)번 * [TCP conn. set, HTTP req/res 2RTT]
- How many sockets are open at the same time in a client/server host when using each of three HTTP types above? ??
- What is a HTTP pipelining?
- multiple HTTP request + msgs are sent over a single TCP comm w/o waiting for each response.
- 보낸 순서대로 응답할 수 있다.
- user-perceived delay : 총 delay는 같은데 처음 보내는 data가 너무 크면 delay 크게 느껴짐. 작은 data loss 생기면 뒤에 애들이 queueing delay.
'CS > Computer Network' 카테고리의 다른 글
Ch4 p1~13 (0) | 2023.11.29 |
---|---|
231003 ch2 43~54 (0) | 2023.10.09 |
230919 ch1~끝, ch2 p1~10 (0) | 2023.09.26 |
230914 ch1 p30-65 (0) | 2023.09.23 |
20230912 ch1 (1) | 2023.09.19 |