티스토리 뷰
[데이터 통신]Protocol Architecture, TCP/IP, and Internet-Based Applications
White Whale 2016. 4. 12. 21:00• 프로토콜 : 컴퓨터간에 정보를 주고 받을 때의 통신방법에 대한 규칙과 약속
• 기본적으로 통신을 하기위해 준비되어야하는 것들
1. 발신 시스템은 데이터 전송로를 직접 가동시키던지, 목적지 시스템의 식별자를 통신망에게 알려주어야 한다.
2. 발신 시스템은 목적지 시스템이 데이터를 받을 준비가 되어 있는가를 확인해야한다.
3. 발시 시스템의 파일 전송 프로그램은 목적지 시스템의 파일 수신 프로그램이 파일을 받아 저장할 준비가 되있는지 확인해야한다.
4. 두 시스템에서 사용되는 파일 형식이 다를 경우, 하나의 시스템은 형식 변환 기능을 수행해야한다.
• 프로토콜의 주요 골자
1. Syntax : 데이터 블록의 형식을 다룬다.
2. Semantics : 조정과 오류관리를 위한 제어 정보를 다룬다.
3. Timing : 속도 조절과 순서 조절을 다룬다.
• 네트워크 물리계층
1. Physical Layer
- 물리적 매체 상의 비트 스트림 전송을 담당하며 물리적 매체의 세부사항을 다룬다.
- 광섬유, 위성, 지상 마이크로웨이브 등
2. Data Link Layer(Network Access Layer)
- 근거리 네트워크간의 통신을 하며 end system(컴퓨터)와 네트워크 통신 시 물리적 신호를 디지털 신호로 변경한다.
- 실제 네트워크 하드웨어 정보를 다룬다.
- 이더넷, 와이파이, ATM, 프레임 릴레이 등
3. Network Layer(Internet Layer)
- end to end 통신에서 양쪽 끝(end system이나 라우터)을 어떻게 정의할 것인지를 담당한다.
- 목적지에 도달하기 위한 데이터가 담겨있다.
- 경로 지정을 담당하며 혼잡제어를 제공한다.
- 인터넷에 대한 물리적 경로는 고정적이다. 그러나 해당 경로에 대한 트레픽의 양은 고정적이지 않다. 실시간 트레픽의 양에 대한 정보를 수집하여 최단거리의 길을 알려주는 것이 라우터이다
- IPv4, IPv6
4. Transport Layer
- 출발지와 도착지 즉 종단간 데이터 전달을 수행하며 오류 제어, 흐름 제어, 혼잡 제어, 신뢰적인 배달 서비스를 제공한다.
- 어떤 응용프로그램으로 가야할지를 알려주는 port 또는 서비스 접속점(SAP)을 가지고 있다.
- TCP, UDP
5. Application Layer
- 다양한 응용을 지원하기 위해 응용의 종류에 따라 별개의 모듈이 제공한다.
- SSH. HTTP, FTP, SMTP
• 상위 계층에서 내려온 데이터에 제어정보를 결합한 것을 프로토콜 데이터 유닛(PUD)라고 한다. 이때 헤더를 붙이는 작업을 캡슐화라고한다. 수송계층 PDU는 세그먼트라고 부르고 발신지, 수신지 포트와 선서 번호, 오류 검출 코드를 가지고 있고 인터넷/네트워크 계층의 PDU는 IP datagram이라 부른다. Data Link/Network Access 계층의 PDU는 패킷이며 발신지, 수신지 주소와 서비스 요청이 들어있다.
• TCP는 virtual circuit으로 송수신자의 연결이 확인이 된 후 데이터 통신을 한다. 실질적인 데이터 통신은 패킷을 통한 통신이지만 수신에 대한 보장과 데이터 순서, 비트 오류 및 상실에 대해 처리해준다.
• Sequence : 몇 개의 패킷을 보냇다. / Acknowledgement : 몇개 받았다. / Reserved : 혹시 모를 여유공간(새기능)
Window : 받았다라는 확인없이 보낼 수 있는 최대 갯수
Checksum : 에러 여부 체크 -> 에러가 있으면 페킷을 없애 네트워크 자원 낭비를 방지한다.
• UDP는 신뢰성을 보장하지 않는다. 목적지에 데이터를 보냈다라는 사실만을 보장하지 해당 패킷의 도착 순서나 상실, 오류에 대해서는 보장하지 않는다. TV중계와 같이 실시간 데이터를 중요시 하는 데에는 순서 보장에 대한 딜레이가 있는 TCP보다 상실된 패킷에 대해 보장하지 않는 UDP가 더 유리하다.
• IPv4 Header에는 TTL(Time to Live)라는 정보가 들어있는데 이것은 목적지까지 도달하기까지의 제한 시간이다. 만약 이 시간이 지났는데도 목적지에 도착하지 못했다면 패켓이 다른 길로 빠졌다고 생각하고 페킷을 제거되도록 한다.
• Streaming media는 전체가 다운되어있지 않아도 받은 만큼 재생할 수 있다.
• 멀티미디어 트래픽을 지원하기 위해 다양한 프로토콜이 사용된다. RTP(Real Transfer Protocol)은 수신측에서 원할하고 연속적인 스트림의 형태로 실시간 트래픽을 받을 수 있도록 버퍼링과 폐기 전략을 사용한다. SIP(Session Initiation Protocol)은 IP 데이터 네트워크를 통하여 두 참가자 간의 실시간 세션을 설정하고 변경하고 종료하는 응용 단계의 제어 프로토콜이다.
• Raw Socket : Socket API는 응용프로그램 영역에 있고 transport 영역과 Network영역을 접근할 수있다. 원래라면 계층적으로 접근하는게 맞지만 이동 모바일 에서는 전원을 효율적으로 쓰기 위해 바로 하위 영역에 접근할 수 있다.
'SoftWare > 네트워크 & 통신' 카테고리의 다른 글
[데이터 통신]Data Link Control Protocols (0) | 2016.08.15 |
---|---|
[데이터 통신]Error Detection and Correction (0) | 2016.08.15 |
[데이터 통신]Signal Encoding Techniques (0) | 2016.08.15 |
[데이터 통신]Data Transmission (0) | 2016.04.13 |
[데이터 통신]Data and Computer Communications (0) | 2016.04.12 |
- Total
- Today
- Yesterday
- Notification
- vim 설치
- 유전
- Java Decompiler
- 테라펀딩 #투게더펀딩 #P2P투자 #부동산 소액 투자 #카카오 #토스
- android
- c언어
- 서버
- 5582
- counter
- 파일입출력
- Res
- LISTVIEW
- 파일 입출력
- java 파일 입출력
- 아두이노
- 유전 알고리즘
- jad
- 카운터
- 알고리즘
- java
- vim
- java url
- 자바 입출력
- 인텐트
- Service
- 포켓몬 Go
- php
- 포켓몬 고
- 안드로이드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |