1. 영상통신과 인터넷
1.1 영상통신을 위한 요구사항
□ 디지털화된 영상 정보의 패킷 사이에 전달 지연변이를 일정 범위 이내로 유지하는 것이 중요하다.
즉, 전달된 영상데이터 패킷들이 자연스러운 영상으로 복원되려면, 영상을 부호화할 때의 표본화 주기와 동일한 주기로 재구성될 수 있도록 패킷들의 도달 간격이 표본 주기보다 크지 않아야 한다.
□ 영상 정보의 전송에서는 혼잡이 발생하거나 패킷의 분실 없이 전달되는 패킷의 경로설정이 중요하다. 도달되는 패킷의 순서가 바뀌거나 오류 발생으로 패킷이 분실되면 실시간 영상의 복원이 불가능하기 때문이다.
□ 송신자와 수신자가 먼저 전송로의 연결(Connection)을 설정하고, 그 연결을 고정적으로 사용하는 회선 교환망에서는 비교적 쉽게 만족한다. 그러나 패킷 헤더의 주소를 통해 중간 라우터에서 매 패킷마다 독립적으로 패킷의 전달 방향을 결정하는 패킷교환망의 경우에서의 영상통신은 다른 새로운 기술적 문제를 제기한다.
1.2 인터넷과 영상통신
□ 인터넷은 물리적인 네트워크들을 상호 접속하는 방법이다.
□ 네트워크에 연결되어 있는 컴퓨터들이 서로 통신하는 방법을 제공하는 프로토콜들의 집합이다.
□ 인터넷에서는 TCP/IP(Transmission Control Protocol/Internet Protocol)라고 불리는 프로토콜을 기반으로 하여 부분적인 데이터 통로(Link)들을 연결시키고 있다.
▷ TCP/IP는 연결지향의 신뢰성 있는 데이터 전송을 할 수 있다.
▷ TCP/IP는 네트워크에 관련된 하드웨어 부분과는 독립적이어서, 특정한 하드웨어에 대한 지식이 없어도 인터넷 응용을 개발할 수 있다.
▷ 모든 컴퓨터들을 유일하게 식별할 수 있는 주소 체계가 편리하게 되어 있다.
→ 현재 : IPv4(Internet Protocol Version 4)의 32비트 IP주소를 사용한다.
→ 급격히 증가하는 네트워크의 수요를 충족시키기 어려워, 새로 설계된 IPv6(Internet Protocol Version 6)에서는 128비트의 새로운 IP 주소 방식을 채택하고 있다.
□ 저속의 기존 인터넷 환경에서 고속의 영상통신을 위한 환경으로의 개선
▷ 인터넷 기간망(Backbone Network)의 용량이 증대되었다.
▷ 라우터 및 네트워크 설계 기술의 발달로 인해 인터넷에서도 고속 데이터를 전달할 수 있게 되었다.
▷ 멀티미디어에 대한 수요가 급증하면서 인터넷에서 멀티미디어 데이터를 전달해보자는 시도가 제기되었다.
□ 영상통신을 위한 프로토콜
▷ 영상회의 등 다양한 멀티미디어통신 서비스가 멀티캐스트 프로토콜 환경 하에서 시험되고 있다.
→ MBone(Multicast backBone)은 영상통신을 포함하는 멀티미디어 멀티캐스트 서비스를 시험 운용하는 인터넷상의 가상망이다.
▷ 멀티미디어 수송 프로토콜 기술의 표준화
→ RTP(Realtime Transport Protocol)
→ RTCP(RTP Control Protocol)
→ RTSP(Realtime Streaming Protocol)
1.3 영상통신을 위한 인터넷 보완 기술
□ 인터넷 상에서 영상통신 서비스를 수용하기 위해서는 해결해야 할 사항들이 많이 있다.
▷ 서비스품질 보장 기술
→ 실시간적 요구사항을 전달망의 관점에서 서비스품질을 어떻게 확보해 줄 것인가에 대한 해답을 찾기 위한 것
※ 영상통신에 사용되는 매체가 영상과 음성이라는 실시간 특성을 가지는 트래픽인데 반해, 현재 이를 전달할 하부 네트워크가 이러한 실시간적 요구사항을 보장해 주지 못하기 때문
▷ IPv6
→ 인터넷 사용자의 폭발적인 증가로 주소 공간의 확장 필요
→ 인터넷 상에서의 보안(Security) 문제를 용이하게 해결
▷ 멀티미디어 멀티캐스트
→ 다지점간의 영상회의에 사용
- 수 백, 수 천명의 참가자가 동시에 하나의 회의 세션에 참가
→ 진행 중인 연구
- 그룹 주소 관리, 회원 관리, 멀티캐스트를 위한 경로설정 기법
□ 영상통신을 위한 인터넷 보완 기술
▷ RTP(Realtime Transport Protocol)
→ 타임스탬프와 순서번호 구간이 있어서 실시간성 패킷을 다루는데 편리하다.
▷ RTCP(RTP Control Protocol)
→ 종단 간에 궤환 정보를 제공하므로 송신자와 수신자가 네트워크의 현재 상태를 추정하여, 이를 전송률 제어에 활용할 수 있으므로 대단히 유용하다.
▷ SDP(Session Description Protocol)
→ 회의에 관한 일반적인 사항을 서술할 때 사용
▷ SAP(Session Announcement Protocol)
→ 서술된 회의 내용을 사용자들에게 알림
▷ SIP(Session Initiation Protocol)
→ 영상회의 세션을 개설하고자 할 때
▷ SCCP(Simple Conference Control Protocol)
→ 회의 참가자들을 관리하거나 회의 진행에 필요한 발언권 등을 제어
2. 인터넷 프로토콜
2.1 TCP/IP의 구조
(1) OSI 7 Layer 구조
□ Physical Layer
▷ 전기, 물리 조건
→ 가장 기본이 되는 계층으로 물리적인 연결 기능을 담당
→ 시스템 간에 데이터 송/수신이 가능하도록 물리적인 링크를 구성하고 유지하기 위한 전기, 기계, 절차 등 기능적 측면을 담당
□ Data Link Layer
▷ 인접 장치 간 데이터 전송
→ 인접한 시스템 간에 형성된 물리적인 링크를 통해 신뢰성 있는 데이터의 전달을 보장
→ 물리적인 어드레싱, 네트워크 토폴로지, 회선 사용 규칙, 에러 검출, 프레임 전달, 흐름 제어 등
□ Network Layer
▷ 통신망간 데이터의 중계
→ 두 종단 시스템 간에 네트워크 경로 선택 및 연결성 제공
→ 주로 라우터가 역할을 수행하게 되며, 라우팅 프로토콜을 통하여 목적지까지의 최적의 경로를 선택하여, 선택된 경로로 데이터를 전송
□ Transport Layer
▷ 신뢰성 있는 데이터의 전송 보장
→ 데이터 전송시 발생하는 오류의 검출 및 복구
→ 가상 회로(Virtual Channel)의 구축, 경로 유지 및 종료
→ 흐름 제어(Flow Control) 기능을 제공
□ Session Layer
▷ Conversation Control
→ 응용 프로그램 간에 세션을 구성하고 관리하며 종료시키는 역할 수행
(즉, 프리젠테이션 층 사이의 대화 링크를 동기 시키며 데이터 교환을 관리)
□ Presentation Layer
▷ 정보 표현 형식
→ 응용 계층이 통신을 수행하는 다양한 정보의 표현 형식을 공통의 전송 형식으로 바꾸거나 암호화 또는 데이터를 압축하는 기능 제공
→ 정보의 표현 형식은 응용계층에서 사용되는 추상 구문(Abstract Syntax)과 데이터 전송에 실제로 사용되는 전송 구문(Transfer Syntax)이 정의되어 있음
□ Application Layer
▷ 통신 기능
→ OSI 환경 외에 있는 로컬 시스템의 응용 프로세스들과의 인터페이스와 자체 응용 계층의 서비스 가능을 제공
→ 예) 엑셀, 워드 등
(2) OSI와 TCP/IP의 계층 구조 비교
□ Physical Layer
▷ 물리적으로 연결된 하드웨어적인 접면의 세부사항을 다룬다
→ 각 시스템에 따른 장치 드라이버와 네트워크 카드를 나타내고 어떤 유형의 전송매체가 사용되었는지 등
□ Data Link Layer
▷ 인접 장치간 데이터 전송
→ 인접 장치간 데이터의(Bit-Level) 실질적인 전송 담당
→ 다양한 형태의 기능들이 존재함
※ Ethernet, PPP, ATM, Frame Relay, WDM등
□ Network Layer(Routing of Datagrams from source to destination)
▷ 데이터를 목적지에 도달하도록 포워딩(Forwarding)과 라우팅(Routing) 수행
→ 라우팅 : 데이터가 목적지에 도달하도록 경로(Path)를 결정
→ 포워딩 : 라우팅의 결과에 따라 데이터를 해당 경로로 보냄
□ Transport Layer(Host-Host Data Transfer)
▷ 신뢰성 있는 데이터의 전송 보장
→ 여러 응용 프로그램들을 구별
→ 응용 프로그램이 요구하는 수준의 신뢰성(Reliability) 제공
▷ 대표적인 프로토콜
→ TCP(Transmission Control Protocol)
→ UDP(User Datagram Protocol)
□ Application Layer
▷ 통신 기능
→ E-mail, FTP, SMTP, HTTP 등과 같은 OS와 결부된 응용들
→ 사용자들 간의 자세한 네트워크 구조와 전송 과정을 알 필요가 없음
(3) TCP/IP 구성 요소와 주요 프로토콜
□ Link Layer : IP 계층에서 사용되는 주소와 네트워크 접면에서 사용되는 주소는 그 체계가 서로 다르기 때문에 ARP, RARP 프로토콜을 사용하여 주소 변환을 하고 있다.
▷ ARP(Address Resolution Protocol) : IP 주소를 MAC 주소로 변환하여 준다.
▷ RARP(Reverse Address Resolution Protocol) : MAC 주소를 IP 주소로 변환하여 준다.
□ Network Layer
▷ IP(Internet Protocol) : TCP와 UDP에서 모두 사용되며, TCP와 UDP의 모든 데이터는 종단 시스템과 중간의 모든 라우터에서 IP 계층을 지나 전송된다.
▷ ICMP(Internet Control Message Protocol) : IP에 부속되는 프로토콜로서 다른 호스트나 라우터에서 IP 계층의 오류 메시지와 같은 정보를 교환하는데 사용된다.
▷ IGMP(Internet Group Management Protocol) : UDP 데이터그램을 여러 호스트에게 멀티 캐스트하는데 사용되는 프로토콜이다.
□ Transport Layer : 송신 호스트와 목적지 호스트 사이에서 수송되는 데이터 패킷 하나하나에 대해 종단 간 데이터 흐름(Flow)을 제공하는데, TCP/IP 프로토콜 구조에는 TCP와 UDP라는 수송 프로토콜이 있다.
□ Application Layer : 응용 계층은 네트워크를 통하여 데이터가 어떻게 전달되는지에 상관없이 응용의 세부 사항에만 관여하나, 하위 세 계층은 상위 계층에 관해서는 아무것도 알지 못하고 단순히 데이터의 전달만을 다룬다.
2.2 인터넷 프로토콜(IP)
□ IP는 TCP/IP 프로토콜에서 사용되는 네트워크 계층의 프로토콜로서 인터넷 주소를 이용하여 패킷을 목적지까지 보내는 프로토콜이다. 인터넷에 연결된 모든 호스트와 라우터는 IP를 이해하고 처리할 수 있어야 한다.
□ IP의 주된 기능은 연결될 호스트의 주소 지정과 패킷을 생성하는 것이다.
□ IP는 패킷을 다음 노드(라우터)까지만 전달하고 전달된 패킷이 정확하고 안전하게 목적지까지 도착하였는지에 대해서는 보장을 하지 못하는 최선형(Best-effort) 서비스만을 제공한다.
▷ IP에서는 데이터를 전달할 때, 연결설정 절차 없이 각 데이터그램이 독립적으로 목적지까지 전송된다.
→ IP 데이터그램들이 순차적으로 전송되지 않는 것을 의미하기도 한다.
→ 송신자가 A,B 두 데이터그램을 같은 목적지에 전송하였을 경우, 각 데이터그램은 다른 라우터를 통하여 독립적으로 전송되어 A보다 B가 먼저 도착할 수도 있다.
□ IP는 비 연결형 프로토콜로서, 필요한 경우 패킷을 분할(Fragmentation)한다.
▷ 비 신뢰적인 IP의 특성 때문에 패킷을 전달할 때는 패킷 헤더에 제한된 생존시한(TTL:Time To Live)을 설정하여 네트워크에 패킷이 계속 돌아다니는 것을 방지한다.
□ IP는 IP 데이터그램을 통해서 전달되는 거의 모든 정보를 캡슐화(Capsulation)한다.
▷ IP헤더의 크기는 최소 20옥텟이며, 특별한 IP 헤더 선택사항(Option)이 추가될 수도 있다.
※ 네트워크에서는 바이트라는 용어보다 옥텟이라는 용어를 더 많이 사용한다.
□ IP의 가장 중요한 기능 중의 하나가 경로설정(Routing)이다.
▷ 경로설정이란 어떤 호스트에서 생성된 데이터그램을 목적지로 전달하기 위한 경로를 선택하는 과정을 말한다.
□ IP는 패킷 전달과 관련된 다음 기능들을 보유하고 있다.
▷ 호스트들과 라우터들이 패킷들을 처리하는 방법
▷ 오류 메시지를 발생시키는 방법
▷ 패킷들을 제거하기 위한 조건
□ 다음 그림은 IP(IPv4) 프로토콜의 헤더를 나타낸 것이다.
□ 개정판 : 데이터그램을 만들 때 쓰여진 인터넷 프로토콜의 개정판(Version)의 종류를 나타낸다.
▷ 현재 일반적으로 쓰이고 있는 것은 제4판이다.(IPv6 의 경우는 제6판이다.)
□ 헤더길이 : 32비트를 기본 단위로 하며, IP 헤더의 길이를 나타낸다.
□ 서비스 유형(TOS:Type of Service)
▷ IP 패킷의 우선권을 정의하는데, 전달할 데이터의 전달 우선순위와 관련된 제어 상태를 지정할 수 있다.
▷ 이 구간은 신뢰성, 우선순위, 지연, 처리율 등을 규정하는데 상위 계층의 응용에 따라 다르게 지정한다.
□ 패킷 길이 : IP 헤더를 포함한 IP 패킷의 전체 길이를 옥텟 단위로 나타낸다.
▷ 크기가 16비트이므로 IP 데이터그램의 이론적 최대 데이터의 크기를 MTU(Maximum Transmission Unit)라고 하며, 이 값은 네트워크 특성에 따라 지정되어 있다.
(※ MTU : 최대 IP 패킷 전송 단위이며, 이더넷은 1,500옥텟, 토큰링은 1,492옥텟, FDDI는 4,352 옥텟이다.)
▷ 만일, 응용이 하부 네트워크의 MTU보다 큰 데이터를 전송할 경우에는, 이 데이터는 여러 조각으로 분할되며, 각 조각에는 식별자(Identification)를 두어 서로를 구분하고, 수신측에서 패킷들이 재조립될 때 동일한 메시지의 일부임을 알게 한다.
□ 식별자 : 데이터그램이 여러 조각으로 분할될 때 각 조각 패킷들을 구분할 때 사용한다.
□ 플래그 : 데이터그램이 여러 조각으로 분할되었는지를 나타낸다.
□ 분할위치 : 데이터그램이 여러 조각으로 분할되었을 경우, 분할된 위치를 나타낸다.
□ 생존시한(TTL : Time To Live) : 패킷이 네트워크 상에서 무한히 떠도는 상태를 방지하기 위하여, 패킷이 각 라우터를 지날 때마다 ‘1’씩 감소되는 값으로, 이 값이 ‘0’이 되면 패킷은 폐기 된다.
□ 프로토콜 : 상위 계층 프로토콜의 종류를 나타낸다.
▷ 값이 ‘6’이면 TCP, 값이 ‘17’이면 UDP, 값이 ‘2’이면 ICMP, 값이 ‘1’이면 IGMP이다.
□ 헤더 검사 합 : 헤더 부분의 오류 발생을 검출한다(오류 검사는 상위 수송 프로토콜에서 담당)
□ 선택사항 및 채워 넣기 : 네트워크 응용을 시험하고 고치기(Debugging) 위해 사용되는 구간이다.
□ 발신지 IP주소 및 목적지 IP 주소 : 32비트의 송신지 IP 주소와 목적지 IP 주소를 기록한다.
□ IP주소의 형식은 다음 그림과 같이 다섯 가지의 등급으로 구분된다.
□ IP주소는 네트워크 식별자(Network Identifier)와 호스트 식별자(Host Identifier)의 쌍으로 구성
□ IP주소의 등급은 IP주소의 첫 부분의 비트 구성에 의해 구분
□ 등급 A의 네트워크 식별자는 7비트이고, 호스트 식별자는 24비트이다.
▷ 등급 A 주소 체계에서는 27개의 네트워크를 구성할 수 있고, 하나의 네트워크당 224개의 호스트를 접속할 수 있다.
▷ 등급 A 주소 범위 : 1.0.0.0 ~ 127.255.255.255
□ 등급 B의 네트워크 식별자는 14비트이고, 호스트 식별자는 16비트이다.
▷ 등급 B 주소 체계에서는 2 개의 네트워크를 구성할 수 있고, 하나의 네트워크당 2 개의 호스트를 접속할 수 있다.
▷ 등급 B 주소 범위 : 128.0.0.0 ~ 191.255.255.255
□ 등급 C의 네트워크 식별자는 21비트이고, 호스트 식별자는 8비트이다.
▷ 등급 C 주소 체계에서는 221개의 네트워크를 구성할 수 있고, 하나의 네트워크당 28개의 호스트를 접속할 수 있다.
▷ 등급 C 주소 범위 : 192.0.0.0 ~ 223.255.255.255
□ 등급 D는 특정 네트워크의 호스트에 할당되는 주소는 아니고, 인터넷 멀티캐스트를 위한 주소 공간으로 사용된다.
2.3 IPv6
□ IPv6는 새로운 인터넷 프로토콜(IP)로서, 멀티미디어 데이터를 효과적으로 수용하기 위해 도입
□ IPv4보다 훨씬 넓은 주소 공간을 제공
▷ 32비트 주소 체계에서 12비트 추소 체계로 확장
□ 인증 기능, 암호 기능 등이 강화됨
□ IPv4와 같이 비 연결형 구조
□ 네트워크 계층에서는 오류제어나 흐름제어 기능을 수행하지 않음
□ IPv4와 다른 특징
▷ 주소 공간 확대
▷ 멀티캐스트되는 범위를 특정한 범위 내로 제한 가능
▷ 패킷 헤더에 있는 흐름표식(Flow label) 구간은 동일한 데이터 열(흐름)에 속하는 모든 패킷을 식별하는데 사용된다.
→ 흐름(Flow)이란 호스트가 유니캐스트 주소나 멀티캐스트 주소로 보내는 패킷 열(Packet Sequence)을 의미한다.
→ 경로 상에 존재하는 모든 IPv6 라우터는 흐름을 통해 패킷을 식별할 수 있으며, 흐름 기반으로 그들을 처리한다.
→ 흐름표식은 IP 계층에서 자원예약과 서비스품질을 제공하기 위한 핵심적인 역할을 담당 한다.
▷ 인증과 투명성, 데이터 암호화 등을 위한 새로운 기법을 제공한다.
2.4 IP 멀티캐스트(Multicast)
□ 인터넷의 데이터 전달 방식은 전달에 참여하는 송신자와 수신자 관점으로 나누어 유니캐스트(Unicast), 브로드캐스트(Broadcast), 멀티캐스트(Multicast)로 구분할 수 있다.
▷ 유니캐스트
→ 하나의 송신자가 다른 하나의 수신자에게 데이터를 전달하는 방식
→ Telnet, FTP 등
▷ 브로드캐스트
→ 하나의 송신자와 동일한 하부 네트워크 상의 모든 수신자에게 데이터를 전달하는 방식
→ ARP, RARP 등
▷ 멀티캐스트
→ 1:N 통신을 가능하게 해주는 방식
→ 멀티미디어 데이터를 전달하는데 가장 많이 쓰이는 방식
→ 인터넷 영상회의, 원격교육 등
□ 멀티캐스트 전송
▷ 동작 순서
① 데이터를 받을 수신자를 호스트 그룹으로 정의한다.
② 그룹에 멀티캐스트 주소를 할당하여 데이터를 전송한다.
③ 데이터를 받은 라우터는 호스트 그룹의 멤버가 있는 쪽으로만 데이터를 복사하여 목적지 호스트까지 전달한다.
▷ 유니캐스트와 다른 점
→ 유니캐스트 전송 패킷 헤더 : 수신자 주소를 전송 패킷의 헤더에 표시해 패킷을 전송
→ 멀티캐스트 전송 패킷 헤더
- 전송을 위한 그룹 주소는 D등급 인터넷 주소(224.0.0.0 ~ 239.255.255.255)를 사용한다.
- 그룹 주소는 호스트를 나타내는 주소가 아님
- 멀티캐스트 패킷을 수신한 수신자는 자신이 어느 그룹에 속해 있는지를 판단하여 패킷의 수용 여부를 결정한다.
□ IGMP 프로토콜 사용 : 그룹 관리를 위한 프로토콜
▷ 멀티캐스트 그룹의 가입, 탈퇴 및 기타 정보들을 제어한다.
▷ 최근 새로 제안된 제3판(Version 3)은 탈퇴할 때의 지연을 줄이기 위해, 호스트는 어떤 확인 절차 없이도 그룹을 떠날 수 있게 되어 있다.
2.5 UDP
□ UDP는 데이터 전달에 있어서 신뢰성을 보장하지 않는다.
□ 비 연결형 데이터그램 방식을 사용하는 간단한 프로토콜이다.
□ UDP 데이터그램을 포함한 IP 데이터그램 구조는 다음과 같다.
▷ UDP 헤더는 발신지 포트번호, 목저기 포트번호, UDP 메시지 길이, UDP 검사합 등 네 개의 구산으로 구성
▷ UDP 헤더는 8옥텟의 크기를 가지며, 포트 구간은 프로토콜 포트를 나타내는 16비트의 정수 값으로 채워진다.
▷ 발신지 포트번호 구간 : 데이터를 전달한 프로토콜 포트번호
▷ 목적지 포트번호 구간 : 데이터를 수신하게 될 포트번호
▷ UDP 메시지 길이 : UDP 헤더를 포함하는 UDP데이터그램의 길이를 옥텟 단위로 나타냄
▷ UDP 검사 합 : IP 헤더의 검사 합과는 달리, 계산 대상으로 UDP 헤더뿐만 아니라 UDP 데이터도 포함시킨다. 검사 합은 UDP에서는 선택 사항이다.
□ 데이터 구간은 UDP 헤더 바로 다음에 오게 된다.
2.6 TCP
□ TCP/IP 프로토콜 군에서 가장 일반적으로 사용되는 수송 계층 프로토콜
□ 네트워크 계층과 응용계층 사이에서 신뢰성 있게 데이터를 전달하는 기능 수행
▷ 검사 합(Checksum), 확인(ACK), 재전송 등의 기능 제공
▷ 동시에 양방향 전송이 가능한 가상회선을 설정하여 스트림 방식으로 데이터를 전달하므로 데이터의 순서를 보장한다.
□ TCP를 지정하는 프로토콜 번호는 ‘6’이다(IP 프로토콜 헤더에서 사용)
□ 데이터 전달시 슬라이딩 윈도우(Sliding Window) 방식으로 흐름 제어(Flow Control)를 한다.
□ 연결 종료시, 양 호스트간에 협의를 한 후 연결을 해제한다.
□ 전송할 블록의 크기를 유연하게 할 수 있다.
▷ TCP가 데이터의 송수신 흐름 제어를 옥텟 단위로 하기 때문에 전달되는 데이터 블록의 시작과 끝을 구분할 필요가 없다.
→ 이를 옥텟 정보 열(Octet Stream) 서비스라 한다.
□ TCP 세그먼트
▷ TCP 데이터의 전달 단위
▷ 연결 관련 정보를 가지고 있음
→ 연결을 설정하고, 데이터를 전달한 후 ACK를 받고, 슬라이딩 윈도우의 크기를 알리고, 연결을 해제
□ 발신지와 목적지 포트번호 구간 : 송수신하는 응용을 식별
▷ IP 헤더 안에 있는 발신지와 목적지 IP 주소와 함께 한 묶음으로 사용되어 각각의 TCP 연결을 구분한다.
□ 순서 번호, ACK 번호 : 각각 32비트씩
▷ 해당 데이터의 이중 전달 방지 및 흐름제어를 위해 사용된다.
▷ 연결이 설정된 후 송수신되는 TCP 세그먼트의 데이터 열에서의 해당 위치를 식별한다.
▷ 연결이 설정될 때 우선, 순서번호를 초기화하여 서로 이를 교환하고, 데이터를 전달할 때마다 순서번호를 점차 증가시킨다.
Ex) ① 수신된 마지막 옥텟의 순서 번호가 ‘100’ 이었다면 TCP는 ACK 번호 ‘101’ 을 송신
② ACK 번호가 유효하다는 것을 나타내기 위해, 플래그(Flag) 비트의 ACK를 세트한다.
▷ ACK 번호는 수신 측에서 얼마나 많은 데이터를 정확하게 수신하였는지 나타낸다.
□ 윈도우 크기(Window Size) : 흐름 제어(Flow Control)를 위한 구간
▷ 수신자가 데이터를 수신하여 데이터 버퍼에 저장할 수 있는 크기를 나타낸다.
▷ 슬라이딩 윈도우(Sliding Window)에서 사용하는 16비트 윈도우 크기를 나타낸다.
▷ 윈도우 크기를 이용하여 수신 측 TCP는 데이터 흐름을 조절하고, 데이터 전달 도중에 수신측의 데이터 처리 능력에 따라 적절히 윈도우 크기를 재조정할 수 있다.
□ 플래그 비트 : 6개의 플래그 비트를 두어, 제어 정보를 전달
▷ 해당 기능을 설정하려면 각 비트를 ‘1’ 로 세트한다.
▷ URG 플래그 : 수신 TCP에게 긴급포인터 구간이 긴급한 데이터를 가리키고 있음을 뜻한다.
▷ ACK 플래그 : 수신 측 TCP에게 ACK 번호 구간이 유효한 번호임을 말해준다.
→ TCP가 데이터를 받고, ACK를 보낼 때 ACK 구간을 세트해야 한다.
→ ACK를 받은 경우 해당 ACK 번호 이전의 모든 데이터들은 수신 측에 잘 전달되었음을
의미한다.
▷ PSH 플래그 : 수신 측 TCP가 수신한 세그먼트를 응용에게 즉각적으로 송신할 것을 요구한다.
▷ RST 플래그 : 수신 측에 연결을 재설정할 것을 요구한다.
→ TCP 연결에 문제가 발생했을 때, RST 플래그를 세트하여 전달한다.
▷ SYN 플래그 : 연결을 초기화 할 때, 데이터의 순서번호를 동기화시킨다.
→ 송신자가 새로운 데이터 스트림을 전달할 준비가 되었음을 수신 측 TCP에게 알린다.
▷ FIN 플래그 : 송신자가 데이터 전달을 끝냈음을 나타낸다.
→ 단지 FIN 플래그를 보낸 단방향에서 데이터의 흐름만을 해제한다.
→ TCP는 연결을 해제할 때, 각 방향에 각각 FIN 플래그를 세트한 메시지를 보내서 단방향으로 연결을 해제한다.
□ TCP 검사 합
▷ 프로토콜 헤더 구간뿐만 아니라 TCP데이터 및 IP의 특정 부분을 나타내는 가상 헤더에 적용되는 검사 합 값이 포함된다.
▷ 검사 합 값을 발생시키는 알고리즘은 IP 검사 합 발생 알고리즘과 동일하다.
□ 긴급 포인터 : TCP 데이터 구간 안에서의 옥텟 위치를 명시
▷ URG 플래그와 긴급포인터의 목적은 특정한 긴급 데이터가 있을 경우, 그 데이터를 우선적으로 처리할 것을 수신 측에 알리기 위함이다.
▷ 일반적으로 통신 도중에 어떠한 문제점이 발생될 경우, 이 상태를 긴급히 알리기 위한 용도로 사용된다.
▷ 긴급 포인터는 긴급 메시지 부분의 시작점을 지정하며, URG 플래그는 긴급 메시지가 있음을 알린다.
□ 선택사항
▷ TCP 연결 설정시, 양 호스트가 초기화하는 동안 TCP는 선택적으로 최대 세그먼트 크기 구간을 사용한다.
▷ TCP의 최대 세그먼트 크기는 하위 계층의 MTU(Maximum Transfer Unit)와 비슷하며, TCP 모듈이 받아들일 최대 세그먼트 크기를 정의한다.
▷ TCP연결을 초기화 할 때, 한 호스트는 특정 값의 MTU를 받아들일 것을 상대 호스트에 알린다. 만일 상대 호스트의 TCP가 MTU값을 전달하지 않으면, 기본 값으로서 ‘536’이 MTU 옥텟 값으로 정해진다.
정리하기
1. 요약정리
□ 영상정보는 다른 정보와는 달리 정보량이 많이 때문에, 빠른 속도로 전송하기 위해서는 초고속 통신 기술이 필요하다.
□ 디지털화된 영상 정보의 패킷 사이에 전달 지연변이를 일정 범위 이내로 유지하는 것이 중요하며 영상 정보의 전송에서는 혼잡이 발생하거나 패킷의 분실 없이 전달되는 패킷의 경로설정이 중요하다.
□ 인터넷은 물리적인 네트워크들을 상호 접속하는 방법으로써 네트워크에 연결되어 있는 컴퓨터들이 서로 통신하는 방법을 제공하는 프로토콜들의 집합이다.
□ 인터넷 기간망(Backbone Network)의 용량이 증대되고, 라우터 및 네트워크 설계 기술의 발달로 인해 인터넷에서도 고속 데이터를 전달할 수 있게 되면서 인터넷에서 멀티미디어 데이터를 전달해보자는 시도가 제기되어 영상회의 등 다양한 멀티미디어통신 서비스가 멀티캐스트 프로토콜 환경 하에서 시험되고 있다.
□ 인터넷 상에서 영상통신 서비스를 수용하기 위해서는 서비스품질 보장 기술과 인터넷 사용자의 폭발적인 증가로 주소 공간의 확장이 필요하고, 멀티미디어 멀티캐스트등의 해결해야 할 사항들이 많이 있다.
□ 영상통신을 위한 인터넷 보완 기술로는 RTP, RTCP, SDP, SAP, SIP, SCCP 프로토콜들이 있다.
□ 인터넷은 주로 최소 또는 No Delay Constraint로서 신뢰성 있는 데이터의 교환을 위해 사용되어 왔는데, TCP/IP 프로토콜들은 이러한 형태의 트래픽을 위해 개발되었으며 매우 효과적으로 작동한다.
□ TCP/IP의 링크 계층은 IP 계층에서 사용되는 주소와 네트워크 접면에서 사용되는 주소 체계가 다르기 때문에 ARP, RARP 프로토콜을 사용하여 주소 변환을 하고 있다.
□ TCP/IP의 네트워크 계층은 IP, ICMP, IGMP 등이 사용된다.
□ TCP/IP의 전송 계층에서는 TCP와 UDP라는 수송 프로토콜이 사용된다.
□ TCP/IP의 응용 계층에서는 네트워크를 통하여 데이터가 어떻게 전달되는지에 상관없이 응용의 세부 사항에만 관여한다.
□ IP는 TCP/IP 프로토콜에서 사용되는 네트워크 계층의 프로토콜로서 인터넷 주소를 이용하여 패킷을 목적지까지 보내는 프로토콜이다.
□ IP의 주된 기능은 연결될 호스트의 주소 지정과 패킷을 생성하는 것이다.
□ IP는 패킷을 다음 노드(라우터)까지만 전달하고 전달된 패킷이 정확하고 안전하게 목적지까지 도착하였는지에 대해서는 보장을 하지 못하는 최선형(Best-effort) 서비스만을 제공한다.
□ IP는 비 연결형 프로토콜로서, 필요한 경우 패킷을 분할(Fragmentation)하고 IP 데이터그램을 통해서 전달되는 거의 모든 정보를 캡슐화(Capsulation)한다.
□ IP의 가장 중요한 기능 중의 하나가 경로설정(Routing)이다.
□ IP주소는 네트워크 식별자(Network Identifier)와 호스트 식별자(Host Identifier)의 쌍으로 구성되며 5개의 등급으로 구분된다.
□ IPv6는 새로운 인터넷 프로토콜(IP)로서, 멀티미디어 데이터를 효과적으로 수용하기 위해 도입 되었으며 IPv4보다 훨씬 넓은 주소 공간을 제공한다.
□ IPv6는 IPv4와 같이 비 연결형 구조로써, 인증 기능, 암호 기능 등이 강화되었으며 네트워크 계층에서는 오류제어나 흐름제어 기능을 수행하지 않는다.
□ 인터넷의 데이터 전달 방식은 전달에 참여하는 송신자와 수신자 관점으로 나누어 유니캐스트(Unicast), 브로드캐스트(Broadcast), 멀티캐스트(Multicast)로 구분할 수 있다.
□ 멀티캐스트가 유니캐스트와 다른 점은 전송 패킷 헤더에 있으며, 유니캐스트가 수신자 주소를 전송 패킷의 헤더에 표시해 패킷을 전송하는 반면, 멀티캐스트는 전송을 위한 그룹 주소를 이용하여 데이터를 전송한다.
□ 멀티캐스트는 그룹 관리를 위한 프로토콜로써 IGMP 프로토콜을 사용한다.
□ UDP는 데이터 전달에 있어서 신뢰성을 보장하지 않으며 비 연결형 데이터그램 방식을 사용하는 간단한 프로토콜이다.
□ TCP는 TCP/IP 프로토콜 군에서 가장 일반적으로 사용되는 수송 계층 프로토콜로써, 네트워크 계층과 응용계층 사이에서 신뢰성 있게 데이터를 전달하는 기능을 수행한다.
□ TCP는 데이터 전달시 슬라이딩 윈도우(Sliding Window) 방식으로 흐름 제어(Flow Control)를 하고 있으며 연결 종료시, 양 호스트간에 협의를 한 후 연결을 해제한다.
□ TCP는 전송할 블록의 크기를 유연하게 할 수 있다.
2. 참고자료
□ 김재균 저, 영상통신시스템, 영지문화사, 2000.
□ William A. Shay, Understanding Data Communications & Networks-2nd Ed., Brooks/Cole Publishing Company, 1999.
'정보과학 > 영상통신시스템' 카테고리의 다른 글
모바일 영상 통신 (0) | 2023.10.18 |
---|---|
영상 통신을 위한 인터넷 기술 (2) (1) | 2023.10.18 |
H.264/MPEG-4 Part 10 (2) (0) | 2023.10.18 |
H.264/MPEG-4 Part 10 (1) (1) | 2023.10.06 |
MPEG-4 Visual (2) (1) | 2023.10.05 |