일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 데이터통신과 네트워킹 5판 #Data communication and Networking 5th #컴퓨터 네트워크 #chapter 2
- Django #Python #Javascript #Html #CSS #프론트엔드 #백엔드 #개발자 #Developer
- 데이터 통신과 네트워킹 5판#컴퓨터 네트워크#컴퓨터공학과#통신공학
- Frontend #Developer #Junior_developer #html5 #CSS3 #Javascript
- 프론트엔드 #로드맵 #2018 #2019 #하나씩 #차근차근
- 데이터 통신과 네트워킹 5판 #data communication and networking 5th #컴퓨터 네트워크
- 데이터 통신과 네트워킹 5판 한글 #데이터 통신과 네트워킹 5판 정리 #컴퓨터 네트워크 #Data communication and Networking 5th
- 데이터 통신과 네트워킹 5판#컴퓨터 네트워크#Data communication and networking 5th
- 데이터통신과 네트워킹 5판 #컴퓨터 네트워크 #Data communication and Networking 5th
- 데이터 통신과 네트워킹 5판 한글 #컴퓨터 네트워크 #data communication and networking 5th
- Today
- Total
모든 개발자들의 구글
Chapter 2. Network Models 본문
2가지 model(TCP/IP Protocol, OSI Model) -> 컴퓨터 네트워크 운영을 규정하기위해 개발
2.1 Protocol Layering(계층화)
→ 2가지 원칙
프로토콜
- sender와 receiver 그리고 모든 중간 장치들이 통신하기위해 따라야하는 규칙
2.1.1 시나리오
1) 첫 번째 시나리오
- 한 계층에서 일어나는 통신
2) 두 번째 시나리오
- 세 개의 계층에서 일어나는 통신
- 세 개의 계층으로 나누어져 있어서 암호화/부호화에 문제 발생 시 두 번째 계층의 기계만 바꾸면 된다 -> 모듈성(독립된 계층들을 의미)
2.1.2 프로토콜 계층화의 원칙(2가지)
1. 양방향 통신을 원할 경우 각 방향에서 레이어들은 두 가지 반대 작업을 수행해야 한다.
2. 양 쪽의 동일한 level의 객체는 서로 동일해야 한다.
2.1.3 논리적 연결
2.2 TCP/IP 프로토콜
TCP/IP는 현재 인터넷에서 사용하는 프로토콜 그룹(여러 계층들에서 조직된 프로토콜 집합)이다.
2.2.1 계층적 구조
라우터
- 라우팅을 위해 사용
- 전송층, 응용층에는 X
- n개의 link와 연결 → n개의 데이터링크층, 물리층 필요(∵ 각각의 link는 자신의 고유한 data link or physical
protocol 을 사용)
스위치
- 오직 데이터링크층, 물리층과 관련
- 서로 다른 연결을 갖지만, 같은 link 안에 있어서 1개의 protocol 집합만을 사용
2.2.2 TCP/IP 프로토콜 그룹의 계층
Application, Transport, Network Layer
→ Packet(데이터 단위)dl router나 link layer switch에 의해 변하지 말아야 함
- 의무: end-to-end
- 의무를 갖는 영역: link
Data-link, Physical Layer
→ Packet(made from host)이 오직 router에 의해 변해야함
- 의무: hop-to-hop
- 의무를 갖는 영역: link
2.2.3 각 계층에 대한 설명
① 물리층(Physical Layer)
- 프레임의 각 비트들을 링크 건너편으로 전달할 책임
- 논리적 통신 / 물리적 연결
- 두 장치는 전송매체(케이블 or 공기)에 의 해 연결 -> 물리적 연결
- 전송 매체는 비트가 아닌 전기 or 광학 신호를 전송
- Data-link Layer로부터 받은 비트들이 변환되고 전송 매체를 통해 전송
- 두 물리층 사이의 논리적 단위는 하나의 비트
② 데이터 링크층(Data Link Layer)
- 호스트로부터 목적지까지 데이터그램(Packet)이 전달되는 중첩된 여러 link쌍이 존재
- router는 최상의 link를 선택할 책임이 있음
- 전송할 다음 link가 router에 의해 결정되면 데이터그램을 받아 해당 링크로 전송할 책임이 있음
- TCP/IP는 데이터 링크층을 위해 protocol을 정의하지 X → 네트워크층에서의 protocol로 충분
- 데이터그램을 받아서 프레임이라고 하는 패킷으로 캡슐화
③ 네트워크층(Network Layer)
- 발신지, 목적지 컴퓨터 사이의 연결을 생성하는 책임을 가진다.
- host-to-host
- host-to-host 통신과 가능한 경로들을 통해 packet을 routing 할 책임
→ 전송층에서 안 하는 이유는?
a. 서로 다른 계층 간의 작업의 분리
b. router들은 응용층과 전송층을 필요로 하지 않음
- 데이터그램이라는 패킷의 형식을 정의하는 IP(인터넷 프로토콜)를 포함
- IP(인터넷 프로토콜) -> 발신지에서 목적지까지 packet을 routing 할 책임이 있음
→ 비연결형 프로토콜
a. 흐름제어 X
b. 오류제어 X
c. 혼잡제어 X
- unicast, one-to-one, multicast, one-to-many 라우팅 프로토콜 포함
- 라우팅 프로세스를 수행하는 라우터들을 돕기 위해 forwarding table 생성
- IP 전달과 라우팅 process를 돕는 보조 프로토콜을 갖는다.
a. 인터넷 제어 메시지 프로토콜(ICMP) – IP가 packet routing 시 생기는 문제 보고
b. 인터넷 그룹 관리 프로토콜(IGMP) – IP가 multicasting 수행
c. 동적 호스트 설정 프로토콜(DHCP) – IP가 호스트를 위해 네트워크층 주소 획득하도록
d. 주소 변환 프로토콜(ARP) – 호스트나 라우터의 링크층 주소 찾음
④ 전송층(Transport Layer)
- end-to-end(논리적 연결)
- 응용층으로부터 메시지를 받아 전송층 패킷으로 캡슐화
- 목적지 호스트의 전송층에 논리적 연결을 통해 전송(packet을) → 응용층에 서비스를 제공하기 위한 책임이 있음
- 여러 개의 프로토콜 존재
a. 전송 제어 프로토콜(TCP)
- 데이터 전송 전 호스트들의 전송층 사이에 논리적 연결을 설정하는 연결지향 프로토콜
- 흐름 제어(발신지의 송신율과 목적지의 수신율을 맞춤)
- 오류 제어(오류 없이 도착, 훼손 시 재전송)
- 혼잡 제어(혼잡으로 인한 datagram의 손실 줄이기 위해)
b. 사용자 데이터그램 프로토콜(UDP)
- 논리적 연결 성립이 되지 않은 비연결형 프로토콜
- 흐름 · 오류 · 혼잡 제어 제공X
c. 스트립 제어 전송 프로토몰(SCTP)
⑤ 응용층(Application Layer)
- end-to-end
- 2개의 process 존재, process 간 통신이 응용층의 역할
- 프로토콜
a. 하이퍼 텍스트 전송 프로토콜(HTTP) – 월드 와이드 웹(www)에 전송하기 위한 수단
b. 단순 우편 전달 프로토콜(SMTP)
c. 파일 전송 프로토콜(FTP)
d. 단순 망 관리 프로토콜(SNMP)
e. 도메인 이름 시스템(DNS)
f. 인터넷 그룹 관리 프로토콜(IGMP)
2.2.4 캡슐화와 역캡슐화
- 응용층에서 교환되는 데이터는 메시지
→ 메시지
- 전송층은 페이로드로 메시지를 받음 – 전송층 헤더를 페이로드에 붙임
→ 세그먼트(TCP), 데이터그램(UDP)
- 네트워크층은 네트워크층 헤더를 페이로드에 붙임 – 헤더는 발신지, 목적지 주소와 헤더의 오류 검사, 단편화 정보 포함
→ 데이터그램
- 데이터 링크층은 데이터링크층 헤더를 페이로드에 붙임 – host or router의 링크층 주소를 포함한 헤더
→ 프레임
2.2.5 주소 지정
2.3 OSI 모델
Open system
- 기반 구조와 관계없이 서로 다른 시스템 간의 통신을 제공하는 프로토콜의 집합
OSI는 프로토콜이 아닌 모델이다!
Why?
1. TCP/IP는 많은 전송층 protocol을 가진다.
2. session, presentation layer에서 언급된 기능이 필요하면 소프트웨어의 한 부분으로 개발되면 된다.
논리적 연결 - 같은 계층에 있는 2개의 protocol 간
물리적 연결 – physical layer 간
'Study Material > 컴퓨터 네트워크' 카테고리의 다른 글
Chapter 9. Introduction to Data-Link Layer (0) | 2019.05.28 |
---|---|
Chapter 4. Digital Transmission (0) | 2019.05.28 |
Chapter 7. Transmission Media (0) | 2019.05.27 |
Chapter 3. Introduction to Physical Layer (0) | 2019.05.27 |
Chapter 1. Data communication (0) | 2019.05.25 |