2-1. 네트워크 어플리케이션 원리
- App 구조에는 Server/Client, P2P 2 가지가 대표적
- Process 간 통신(Port#)에 interface로 소켓이 활용(Host는 ip 주소)
- App 전송 서비스(신뢰적, 처리량, 시간, 보안) 대표적인 것은 Tcp, Udp
2-2. Web, HTTP, FTP
- web은 대표적인 Server/Client 구조(서버, 브라우저)
- 비지속 연결과 지속 연결(비지속은 한 번 전송 후 연결 끊기지만 비지속은 아님)
- 비지속은 2RTT + transfer time
- 비지속 단점은 서버 과부하와 속도, 그 후 지속으로 발전
- HTTP는 요청/응답 메세지 주고 받음
- 쿠키는 서버에 사용자 정보 저장(get할 떄 쿠키 정보도 같이 요청)
- 웹 캐싱(프록시 서버에 정보 저장, 중간에서 server이자 client 역할 수행)
- 조건부 get은 캐싱할 때 최신 정보인지 확인(IF modified since~~)
- FTP(File Transfer Protocol)은 Port 21을 통해 제어, Port 20을 통해 데이터 전송
2-3. 인터넷 전자메일
- User agent + SMTP 구조 (메일박스, 메세지 큐)
- SMTP는 simple mail transfer protocol로 ASCII로 주고받음
- HTTP와 SMTP 공통점은 지속 연결, 차이점은 ASCII, HTTP는 pull이고 SMTP는 push
- 메일 프로토콜은 POP3 는 간단하게 사용, IMAP은 보다 발전된 형태로 원격 계층 등 기능 지원
2-4. DNS
- IP 주소로 이동하기 힘들어서 host name으로 활용(이 사이 변환이 DNS)
- Centralized DNS 단점(고장나면, 양, 중앙 DB와의 거리, 유지보수)
- 분산화된 DNS(Root, TLD, Authoratative)
- 반복적 질의(local dns 서버에서 왔다갔다) / 재귀적 질의(local dns server에서 root로 들어가서 tld, authoratative)
- DNS 레코드와 메세지
2-5. P2P
- 피어 대 피어로 통신을 하기 때문에 뛰어난 확장성과 재분배
- 파일 배분 시간이 훨씬 효율적이다
- 비트토렌트의 경우, 트랙커라는 구조를 통해 활성화되어 계속 파일 분배(청크라는 작은 구조로 나누어 분배)
2-6. Socket Programming
- 소켓은 Process 통신 interface이다
- UDP는 비연결형이기에 각각의 소켓이 있고 목적지를 적어줘서 보냄(DGRAM)
- TCP는 연결형이기에 각각의 소켓이 연결되어 전송(STREAM)
'Archived(CSE) > 컴퓨터망' 카테고리의 다른 글
Chap 6. Wireless and Mobile Networks (0) | 2019.06.02 |
---|---|
Chap 5. Link Layer (0) | 2019.06.02 |
Chap 4. 네트워크 계층 (0) | 2019.04.13 |
Chap 3. 트랜스포트 계층 (0) | 2019.04.11 |
Chap 1. 컴퓨터 네트워크와 인터넷 (1) | 2019.03.18 |