유, 무선망을 이용하여 신호 전송 시 감쇄 및 손실등으로 인하여 신호의 왜곡 및 에러 발생합니다. 그러면 이번에는 이러한 신호 에러 제어 방식에 대해 알아보도록 하겠습니다.

 

- 에러 제어 방식에는 ARQ(에러검출), FEC 방식(에러정정), Hybrid-ARQ 방식이 있음

FEC는 오류정정을 위한 여분의 비트를 추가하여 전송, 수신쪽에서는 이를 이용하여 오류를 검출, 정정하는 방식

- ARQ는 에러 검출 후 재전송 요청하는 방식으로 Stop and Wait ARQ, Go back N ARQ, Selective ARQ, Adaptive ARQ가 있음

- Hybrid-ARQ 방식은 ARQ와 FEC를 조합한 형태로 고속무선통신에 주로 사용

2. FEC

- 무선통신 에러정정

- 오류정정을 위한 여분의 비트를 추가하여 전송하므로 수신쪽에서는 이를 이용하여 오류를 검출하여 정정하는 방식

- 장점: 역채널이 필요없고 연속적인 데이터 전송 가능

- 단점: 코딩방식 복잡, 추가 bit 사용으로 인해 코딩 효율 저하 

3. ARQ

- 에러 검출 후 재전송 요청

 

가. Stop & Wait ARQ

1) 동작설명

- 송신기에서 데이터(1Frame) 송신 후 자체 타이머를 동작시킴

- 수신측에서는 데이터 수신 성공시 ACK, 실패시 NAK를 전송함

- 송신측이 ACK를 받으면 다음 데이터를 전송하고, NAK를 받거나 Timer 동작시간내에 응답이 없으면 데이터를 다시 송신함

 

2) 특징

- 신뢰성 있는 통신이 가능하나 고속전송이 불가함

- 저속 문자 방식에 사용됨

- 전송되는 Frame의 수가 한 개이므로 송신측이 기다리는 시간이 길어져 전송효율이 저하됨


나. Go & Back ARQ

1) 동작 설명

- 송신측에서는 윈도우 크기만큼 데이터를 연속적으로 전송하고 수신측에서는 에러 검출 시 NAK 신호를 송신측으로 보냄

- NAK를 받은 송신측은 에러가 발생한 데이터 이후의 데이터를 재전송함

 

2) 특징

- 데이터 재조립을 위해 송신버퍼메모리가 필요함

- 정지 대기 ARQ보다 성능이 우수하나 채널환경에 따라 적당한 N값 설정이 필요함

 

 

 

 

다. Selective ARQ

1) 동작설명

       

- 송신측에서는 수신측으로 연속적으로 프레임을 전송하고, 수신측은 에러 검출 후 에러 발생 시 해당 프레임 정보를 NAK 신호로 송신측으로 전송함

- NAK 신호를 수신한 송신측은 에러발생한 프레임만 수신측으로 재전송함

 

2) 특징

- 에러가 발생한 프레임만 재전송하므로 효율이 우수함

- 재전송된 프레임 순서 재조립을 위해 큰용량의 송수신버퍼 메모리가 필요함

- 고가이며 LAN 카드에 적용

   

라. Adaptive ARQ

- BER↑, 블록의 길이↓

- BER↓, 블록의 길이↑ 즉, 에러 발생 확률에 따라 프레임 길이 조절

- 전송 효율은 좋으나 제어회로가 복잡하고 채널 대기시간 발생

 

4. H-ARQ

 - 무선의 열악한 채널환경에서 신뢰성을 보장하기 위해  FEC(Forward Error Correction) 와 ARQ(Automatic Repeat Request)를 조합한 형태임(3세대 이동통신, Wibro에서 적용됨) 

 - FEC와 비슷한 수준의 정보처리율과 ARQ와 비슷한 수준의 신뢰도를 얻을 수 있음

 - ARQ 방식은 FEC 방식에 비하여 구조가 간단하고 높은 신뢰성을 제공하지만 채널의 BER이 증가하면서 시스템 효율이 저하되며, FEC 방식은 채널의 BER에 상관없는 정보처리율을 유지하지만 신뢰도가 낮음

 

가. Hybrid-ARQ Type 1

 

   - 

 

 

 

 

 - 링크계층(2계층)에서 에러를 감지하고 재전송을 위한 기능을 함

 - 구조가 복잡하고 채널할당이 요구되지만, 빠른 에러정정이 가능하여 고속 Packet서비스에 적합한 에러정정 알고리즘임 

 - Hybrid ARQ 서비스 종류

 

 

 Type 1

 Type 2

 Type 3

동작 

 1)데이터와 CRC를 붙여서 송신

 2) 수신측에서 에러를 발견하고(NACK) 

 3) 재전송을 요청

 4) 오류난 패킷만 단순히 재전송

  1) 데이터를송신

  2) 수신측에서 에러를 발견하고 (NACK) 

  3) 재전송을 요청

  4) 송신측에서 잉여비트를 늘린후 잉여비트를 재전송하고, 수신단은 실패한 패킷을 저장

  5) 수신되면 수신단은 실패한 패킷과 재전송된 잉여비트를 결합하여 복호

 1)데이터를 송신

 2) 수신측에서 에러를 발견하고(NACK)

 3) 재전송을 요청

 4) 전체 데이터를 재전송

 5) 에러패킷 + 재전송패킷

 

 

 

 

5. 비교

 

 

http://www.ktword.co.kr/abbr_view.php?m_temp1=3150

http://blog.naver.com/PostView.nhn?blogId=golma2&logNo=120207824719

 



출처: https://ensxoddl.tistory.com/270 [지금 이 순간]

POP3 : Post Office Protocol 3

IMAP와 비교할때 그냥 단순이 뷰어라고 보면된다.(단방향) 메일서버에서 내쪽으로 전달의 개념, 삭제를 해도 원본은 지워지지 않는다.

ex) 스마트폰에서 메일설정을 pop3로 설정 후 삭제를 해도 메일계정의 메일은 지워지지 않는다.

 

메일 클라이언트가 메일을 사용자 자신의 PC로 다운로드할 수 있도록 해주는 프로토콜을 말한다. 현재 대부분의 메일서버에서는 POP3을 사용하고 있으며 사용자는 넷스케이프나 아웃룩 익스프레스로 서버에 있는 자신의 메일 수신함을 체크하여 메일을 자신의 컴퓨터로 수신한다. 메일을 수신하는 프로토콜에는 POP3와 IMAP(Internet Message Access Protocol)가 있는데, IMAP은 서버에 직접 접속해 메일을 관리하는데 비해 POP3은 메일서버에 있는 메일을 자신의 컴퓨터로 가져와 관리한다는 차이가 있다.

IMAP: Internet Message Access Protocol 

POP3와 다르게 쌍방향이다. 메일서버와 공유하는 개념.

ex) 스마트폰에서 메일설정을 IMAP로 설정 후 삭제를 하면 메일계정의 메일도 지워진다.

 

메일서버에 도착한 메일을 사용자의 컴퓨터에서 체크하고, 수신하는 데 필요한 프로토콜이다.IMAP은 기본적으로 서버에서 메일을 관리하기 때문에 언제 어디서나 동일한 메일을 받아볼 수 있으며 보낸 편지함, 지운 편지함, 보관 편지함, 받은 편지함으로 분류하여 관리할 수도 있다. 

SMTP: Simple Mail Transfer Protocol  

단순히 메일을 보내는 프로토콜. 스마트폰의 경우 발신에서 설정한다. simple mail transfer protocol의 약어. 인터넷 상에서 전자 메일을 전송할 때 쓰이는 표준적인 프로토콜. SMTP 프로토콜에 의해 전자 메일을 발신하는 서버(server)를 SMTP 서버라고 한다. 메일 사이에서 발생하는 것을 전송해 주는 프로토콜로 인터넷에서 이메일을 교환할 때 그 과정을 정렬해준다.

유비쿼터스 컴퓨팅(Ubiquitous Computing)

유비쿼터스 컴퓨팅이란 현실 공간의 모든 것들이 언제 어디서나 사용 가능한 컴퓨터 환경에 연결되어 사용자가 필요한 정보나 서비스를 바로 제공할 수 있는 기술이다. ‘유비쿼터스’는 ‘어디나 존재한다’는 라틴어(ubiquitous)에서 따온 말로 인터넷이라는 가상공간과 실재하는 물리공간의 결합을 의미한다. 이는 컴퓨터에 어떠한 기능을 추가하여 무엇인가를 집어넣는 것이 아니라 반대로 자동차, 안경, 신발과 같은 일상적인 사물에 제 각각의 역할에 부합되는 컴퓨터를 집어넣어 사물끼리 서로 커뮤니케이션을 하도록 만드는 것이다. 이 결과 생활의 모든 곳이 촘촘히 짜인 실처럼 컴퓨터로 만족되는 환경을 만들어 낸다. 이는 컴퓨터와 인터넷을 물이나 공기처럼 이용할 수 있다는 뜻이다.

 

즉, 유비쿼터스 컴퓨팅이란 사물에 컴퓨팅 시스템을 도입하여 사물끼리 서로 커뮤니케이션 할수있도록 하는 것입니다.

유비쿼터스의 주의할만한 특징

하지만 컴퓨터가 삽입됐다고 해서 모두 다 유비쿼터스인 것은 아니다. 여러 장소로 이동하는 사람들에게 정보를 제공하기 위해 네트워크 접속이 돼야한다. 또한 ‘유비쿼터스’는 눈에 보이지 않는 컴퓨터여야 한다. 우리가 신문이나 잡지를 읽을 때 종이에는 전혀 상관하지 않고 내용에만 집중하는 것처럼 컴퓨터 또한 그런 형태로 정보를 보여줘야 한다는 것이다. 즉 유비쿼터스 세계에선 우리가 컴퓨터를 사용하고 있는 것인지 아닐지 모를 정도로 컴퓨터가 환경적인 요소가 되어 눈에 보이지 않아야 한다. 또 한가지 유비쿼터스는 이용하는 사람에 따라, 이용하는 상황에 따라 제공되는 것이 변화해야 한다.

주의할 것은 가상현실은 유비쿼터스가 아니라는 점이다. 유비쿼터스는 실생활에서 인식하지 못할 정도로 환경에 동화된 컴퓨터를 말하는 것이지 컴퓨터가 제공해 주는 허상을 말하는 것은 아니다.

출처 : 성대신문(http://www.skkuw.com)

1. TCP(Transmission Control Protocol)

TCP를 해석하면 전송을 제어하는 프로토콜(규약)이라는 뜻인데, 이는 아래의 정의와 별 다를바 없습니다.

인터넷상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜

 

일반적으로 TCP와 IP를 함께 사용하는데, IP가 데이터의 배달을 처리한다면 TCP는 *패킷을 추적 및 관리하게 됩니다. TCP는 연결형 서비스를 지원하는 프로토콜로 인터넷 환경에서 기본으로 사용합니다. 이 말을 들으면 다음과 같은 생각이 떠오를 수 있습니다. 비연결형인 서비스가 존재하는건가? 그리고 TCP와 달리 UDP는 왜 기본으로 사용되지 않지?? 이러한 질문에 대한 대답은 TCP와 UDP가 각각 다른 특성을 가지고 있기 때문인데요, TCP는 아래와 같은 특징을 지닙니다.

TCP 특징 

  • 연결형 서비스로 가상 회선 방식을 제공한다.

  • 3-way handshaking과정을 통해 연결을 설정하고 4-way handshaking을 통해 해제한다.

  • 흐름 제어 및 혼잡 제어.

  • 높은 신뢰성을 보장한다.

  • UDP보다 속도가 느리다.

  • 전이중(Full-Duplex), 점대점(Point to Point) 방식.

TCP가 가상 회선 방식을 제공한다는 것은 발신지와 수신지를 연결하여 패킷을 전송하기 위한 논리적 경로를 배정한다는 말입니다. 그리고 3-way handshaking과정은 목적지와 수신지를 확실히 하여 정확한 전송을 보장하기 위해서 세션을 수립하는 과정을 의미합니다. TCP가 이러한 특징을 지니는 이유는 간단명료합니다.

 

바로 TCP는 연결형 서비스로 신뢰성을 보장하기 때문입니다. 그래서 3-way handshaking의 과정도 사용하는 것이고, 데이터의 흐름제어혼잡 제어와 같은 기능도 합니다. 하지만 이러한 기능때문에 UDP보다 속도가 느리게 됩니다. (이러한 기능은 CPU를 사용하기 때문에 속도에 영향을 주는 것입니다.) 그렇기에 TCP는 연속성보다 신뢰성있는 전송이 중요할 때에 사용하는 프로토콜입니다!

TCP 서버의 특징 

  • 서버소켓은 연결만을 담당한다.

  • 연결과정에서 반환된 클라이언트 소켓은 데이터의 송수신에 사용된다형 서비스로 가상 회선 방식을 제공한다.

  • 서버와 클라이언트는 1대1로 연결된다.

  • 스트림 전송으로 전송 데이터의 크기가 무제한이다.

  • 패킷에 대한 응답을 해야하기 때문에(시간 지연, CPU 소모) 성능이 낮다.

  • Streaming 서비스에 불리하다.(손실된 경우 재전송 요청을 하므로)

패킷(Packet)이란?

인터넷 내에서 데이터를 보내기 위한 경로배정(라우팅)을 효율적으로 하기 위해서 데이터를 여러 개의 조각들로 나누어 전송을 하는데 이때, 이 조각을 패킷이라고 합니다.

2. UDP(User Datagram Protocol)

UDP를 해석하면 사용자 데이터그램 프로토콜(규약)이라는 뜻인데 풀어 해석하면 아래와 같습니다.

데이터를 데이터그램 단위로 처리하는 프로토콜

 

여기서 데이터그램이란 독립적인 관계를 지니는 패킷이라는 뜻으로, UDP의 동작방식을 설명하자면 다음과 같습니다. 위에서 대충 눈치채셨듯이 TCP와 달리 UDP는 비연결형 프로토콜입니다. 즉, 연결을 위해 할당되는 논리적인 경로가 없는데, 그렇기 때문에 각각의 패킷은 다른 경로로 전송되고, 각각의 패킷은 독립적인 관계를 지니게 되는데 이렇게 데이터를 서로 다른 경로로 독립적으로 처리하게 되고, 이러한 프로토콜을 UDP라고 합니다. 

UDP 특징 

  • 비연결형 서비스로 데이터그램 방식을 제공한다

  • 정보를 주고 받을 때 정보를 보내거나 받는다는 신호절차를 거치지 않는다.

  • UDP헤더의 CheckSum 필드를 통해 최소한의 오류만 검출한다.

  • 신뢰성이 낮다

  • TCP보다 속도가 빠르다

UDP는 비연결형 서비스이기 때문에, 연결을 설정하고 해제하는 과정이 존재하지 않습니다. 서로 다른 경로로 독립적으로

처리함에도 패킷에 순서를 부여하여 재조립을 하거나 흐름 제어 또는 혼잡 제어와 같은 기능도 처리하지 않기에 TCP보다

속도가 빠르며 네트워크 부하가 적다는 장점이 있지만 신뢰성있는 데이터의 전송을 보장하지는 못합니다. 그렇기 때문에

신뢰성보다는 연속성이 중요한 서비스 예를 들면 실시간 서비스(streaming)에 자주 사용됩니다.

UDP 서버의 특징

  • UDP에는 연결 자체가 없어서(connect 함수 불필요) 서버 소켓과 클라이언트 소켓의 구분이 없다.

  • 소켓 대신 IP를 기반으로 데이터를 전송한다.

  • 서버와 클라이언트는 1대1, 1대N, N대M 등으로 연결될 수 있다.

  • 데이터그램(메세지) 단위로 전송되며 그 크기는 65535바이트로, 크기가 초과하면 잘라서 보낸다.

  • 흐름제어(flow control)가 없어서 패킷이 제대로 전송되었는지, 오류가 없는지 확인할 수 없다.

  • 파일 전송과 같은 신뢰성이 필요한 서비스보다 성능이 중요시 되는 경우에 사용된다.

3. TCP와 UDP 비교

프로토콜 종류 TCP UDP
연결 서비스 방식 연결형 서비스 비연결형 서비스
패킷 교환 방식  가상 회선 방식 데이터그램 방식
전송 순서 전송 순서 보장 전송 순서가 바뀔 수 있다.
수신 여부 확인 수신 여부 확인 수신 여부 확인하지 않음
통신 방식 1:1방식 1:1 or 1:N or N:N
신뢰성  높다  낮다
속도 느리다  빠르다

 

출처: https://mangkyu.tistory.com/15

클라우드 컴퓨팅의 문제점과 엣지 컴퓨팅의 정의에 대해 설명하겠습니다.~

클라우드 컴퓨팅 문제점

클라우드 컴퓨팅이란 인터넷을 통해 서버, 저장소, 소프트웨어, 분석 등의 컴퓨팅 서비스를 제공하는 것입니다. 네이버의 NDrive, 구글 Docs 등이 클라우드 컴퓨팅의 대표적인 예로 볼 수 있습니다. 클라우드 컴퓨팅이 탄생한 이후, 각광 받으며 여러 기업들이 클라우드 환경으로 전환하였습니다.

그러나 최근 들어 이런 클라우드 컴퓨팅에도 여러 문제점이 있습니다. 클라우드 서비스를 이용하는 사람들이 기하급수적으로 늘어나면서 서버 및 데이터 센터에서 처리할 수 있는 데이터의 양을 넘어서기 시작했고 수집한 데이터를 분석하고 송신하는 과정에서 발생하는 데이터 지연 현상도 문제점으로 발생했습니다. 또한 클라우드 컴퓨팅의 통신 과정에서 보안 문제도 발생했습니다.

데이터 처리 속도, 용량 및 보안 등의 문제를 해결하기 위해 탄생한 것이 엣지 컴퓨팅입니다.

엣지 컴퓨팅이란?

말단 기기에서 컴퓨팅을 수행하는 것을 엣지 컴퓨팅이라 합니다. 클라우드 컴퓨팅은 데이터를 처리하는 곳이 데이터 센터에 있는반면 엣지 컴퓨팅은 스마트폰과 같은 장치에서 데이터를 처리합니다. 더 자세하게 정리하자면 엣지 컴퓨팅은 분산된 개방형 아키텍처로서 분산된 처리 성능을 제공하여 모바일 컴퓨팅 및 IoT 기술을 지원합니다. 

 

IDC의 정의에 따르면 엣지 컴퓨팅“중요한 데이터를 지역에서 처리하거나 저장하고, 수신된 모든 데이터를 중앙 데이터센터나 클라우드 스토리지 리포지토리로 보내는 약 10평방미터 이하 규모의 마이크로 데이터센터들로 구성된 메시 네트워크(Mesh Network)”이다.

클라우드 컴퓨팅 VS 엣지 컴퓨팅

엣지 컴퓨팅 VS 클라우드 컴퓨팅

위 설명한 것만 보면 클라우드 컴퓨팅과 엣지 컴퓨팅 간 비교로 엣지 컴퓨팅이 무조건 좋아보입니다. 하지만 엣지 컴퓨팅의 장점을 두각시키기 위해선 클라우드 컴퓨팅과 혼합하여 사용해야 합니다. IoT의 경우, 클라우드 컴퓨팅으로 모든 디바이스의 데이터를 받아 연산처리를 진행했다면, 엣지 컴퓨팅을 접목시켜 각 디바이스 내에서 연산처리를 진행한 후, 해당 결과만 클라우드 컴퓨팅으로 전송하는 방식으로 진행하는 것이 두 컴퓨팅 아키텍처의 장점을 전부 살릴 수 있습니다.

엣지 컴퓨팅이 필요한 이유

엣지 컴퓨팅은 대기 시간 없이 실시간 데이터 처리를 지원합니다. 클라우드 컴퓨팅을 이용했을 때, 생성된 데이터를 클라우드로 전송하고 전송받은 클라우드에서 데이터를 가공했다면 엣지 컴퓨팅은 스마트 애플리케이션 및 장치에서 데이터가 생성될 때, 즉각적으로 데이터에 대응하여 전송 시간을 줄여줍니다. 엣지 컴퓨팅을 사용하면 아래와 같은 장점 3가지를 보장할 수 있습니다.

 

(1)데이터 부하 감소

클라우드 컴퓨팅을 사용했을 때, 처리해야 할 데이터 양이 많을수록 시스템에 부하가 생기는 반면, 엣지 컴퓨팅은 해당 기기에서 발생되는 데이터만 처리하기 때문에 부하를 줄일 수 있습니다.

 

(2)보안
클라우드 컴퓨팅은 중앙 서버 아키텍처로 데이터 전송/전달 부터 보안을 강화해야 하는 반면, 엣지 컴퓨팅은 데이터 수집과 처리를 자체적으로 처리하기 때문에 클라우드 컴퓨팅에 비해 상대적으로 보안이 좋다고 할 수 있습니다. 

 

(3)장애대응

클라우드 컴퓨팅을 사용했을 때 서버가 마비되면 치명적인 타격을 입지만 엣지 컴퓨팅을 사용하면 자체적으로 컴퓨팅을 수행하기 때문에 효과적으로 장애를 대응할 수 있습니다.

 

기존의 클라우드 컴퓨팅이 중앙(center) 데이터센터와 직접 데이터를 주고받는 방식이라면, 엣지 컴퓨팅은 단말기 가까이 위치한 가장자리(엣지, edge) 데이터센터와 주로 소통하며 2차 작업과 그 결과물의 저장을 중앙 클라우드에 맡기는 방식이다. 쉽게 말하면, 가까운 곳에 작은 데이터센터가 하나 더 생기는 셈이다. 이 지점은 기지국이 될 수도, 라우터가 될 수도 있습니다.

 

클라우드 컴퓨팅이 엣지 컴퓨팅으로 바뀌면 무엇이 달라질까? 우선, 물리적으로 가까운 기지국을 주로 이용하게 되면서 데이터 전송 속도가 빨라진다. 데이터가 중앙 클라우드 센터까지 갈 필요가 없어 데이터 전송 속도가 빨라질 수밖에 없다. 또 데이터 부하량이 줄어들어 좀 더 쾌적하게 서비스를 이용할 수 있다. 만약 중앙 컴퓨팅이 셧다운되어도 엣지 컴퓨팅을 통해 데이터를 살릴 수 있다.

 

출처: http://m.kukinews.com/m/m_article.html?no=761492

 

 

 

슬라이딩 윈도우(Sliding window)

두 개의 네트워크 호스트간, 패킷의 흐름을 제어하기 위한 방법이다.

( 발신지에서 목적지의 처리 속도를 초과하지 않기 위해 데이터의 흐름을 조절 )

 

TCP와 같이 데이터의 전달을 보증하는 프로토콜에서는 패킷 하나하나가 전달되었음을 확인 신호(acknowledgement)받아야 하며, 만약 패킷이 중도에 잘못되었거나 분실되어 확인 받지 못하는 경우, 해당 패킷을 재전송해야 하는 필요가 있다.

 

여기서 말하는 윈도(window)는 메모리 버퍼의 일정 영역을 뜻한다.

슬라이딩 윈도(Sliding window)라고 하는 이유는 "데이터가 전송되고 확인응답이 수신될 때마다 윈도의 범위를 이동시키기 때문"이다.

 

Stop-and-wait 방식을 사용했을 때는 ACK 를 받고나서 다음 프레임을 전송하므로 비효율적인 면에 비해 슬라이딩 윈도우는 전송측이 전송한 프레임에 대한 ACK 프레임의 확인을 받지 않고도 여러 패킷을 보내는 것을 가능하게 하기 때문에 Stop-and-wait 방식보다 훨신 효율 적이라고 볼 수 있습니다.

슬라이딩 윈도우 데이터 송신 과 승인 방식

[송신 측]

 

•전송 카테고리 1 : 전송했고 승인받음.
•전송 카테고리 2 : 전송 했지만 아직 승인을 받지 못함.
•전송 카테고리 3 : 수신자는 준비됐지만 아직 전송하지 못한 바이트.
•전송 카테고리 4 : 수신자가 준비되지 않았고 전송하지도 못한 바이트.

 

송신( SND)과 수신(RCV)포인터

•송신 비확인(SND,UNA) - 송신 했지만 아직 승인되지 않는 첫 번째 데이터의 순서번호. - 전송카테고리 2의 첫 번째 바이트를 가리킨다. - 앞의 순서 번호는 모두 전송 카테고리 1에 속한다.

 

송신 다음(SND.NXT)
•다른 장비에게 보내야 할 다음 바이트의 순서번호이다.
•전송 카테고리 3번의 첫 번째 바이트를 가리킨다.


송신 윈도우(SND.WND)
•송신 윈도우 크기이다.
•승인 없이 보낼 수 있는 총 바이트 수. 

 

[수신 측]

•수신 카테고리 1 +2 : 수신했고 승인 받음.
•수신 카테고리 3 : 수신자는 준비됐지만 아직 수신하지 못한 바이트
•수신 카테고리 4 : 수신자가 준비되지 않았고 수신하지도 못한 바이트

 

수신 윈도우(RCV.NXT)
•상태 장비에서 받으려고 하는 데이터의 다음 바이트의 순서 번호.

•수신 카테고리 3의 첫 번째 바이트를 가리킨다.


수신 윈도우(RCV.WND)
•상대 장비에게 광고한 수신 윈도우의 크기.

TCP 슬라이딩 윈도우 예

 

출처: https://m.blog.naver.com/gaegurijump/110188012832

최근 5G에 관해 논의가 활발해지면서 네트워크 슬라이싱(Network Slicing)이란 개념이 자주 거론되고 있다. 국내외 통신사업자들(KT, SK Telecom, China Mobile, DT, KDDI, NTT 등)와 벤더들(Ericsson, Nokia, Huawei 등)이 모두 5G 시대의 네트워크 구조네트워크 슬라이싱을 제시하고 있다. 

 

네트워크 슬라이싱이란 물리적으로 하나의 네트워크를 통해 Device, Access, Transport, Core를 포함하여 End-to-End로 논리적으로 분리된(마치, HDD를 C와 D로 파티셔닝해서 쓰는 것처럼) 네트워크를 만들어 서로 다른 특성을 갖는 다양한 서비스들에 대해 그 서비스에 특화된 전용 네트워크를 제공해주는 것이다. 

 

네트워크 슬라이스(Network Slice)는 자원(가상화된 서버내 자원, 가상화된 망 자원)을 보장받으며, 각 슬라이스가 서로간에 절연되어 있어 특정 슬라이스내에 오류나 장애가 발생해도 다른 슬라이스의 통신에는 영향을 주지 않는다. 

그럼 5G 시대에 왜 Network Slice 구조가 필요한가? 

4G까지는 이통망이 처리해주는 단말이 폰이고 폰에만 최적화된 망 구조가 요구됬다면 5G에서는 서로 다른 속성을 갖는 다양한 단말들을  대상으로 서비스를 제공해주야 한다. 5G 시대의 대표적인 Use-Case로 꼽히는 Mobile Broadband, Massive IoT, Mission-critical IoT 등은 Mobility, Charging, Security, Police Control, Latency, Reliability 등의 측면에서 속성과 망 요구 사항이 상이하다. 

 

예를 들어 온도, 습도, 강우량 등을 측정하는 고정형 센서들이 이통망에 연결되는 Massive IoT 서비스의 경우에는 폰과 달리 Handover나 Locate update같은 기능은 필요없다. 또 자율 주행이나 원격 산업용 로봇 제어같은 Mission-critical IoT 서비스의 경우는 모바일 브로드밴드 서비스와 달리 수 ms이내의 낮은 latency를 요구한다.

 

5G Use Case Example Requirements
 Mobile Broadband 4K/8K UHD, 홀로그램, AR/VR high capacity, video cache
 Massive IoT

센서 네트워크 (검침, 농업, 빌딩, 물류,

시티, 홈 등)

massive connection(200,000/km2)

주로 고정형 단말

 Mission-critical IoT

Motion control, Autonomous driving,

공장 자동화, Smart-Grid

low latency (ITS 5ms, Motion control 1ms)

high reliability  

 

그럼 5G 폰망, 5G Massive IoT망, 5G mission-critical IoT망을 따로 만드나?

그렇지 않고 하나의 물리적인 망상에 여러 개의 논리적인 망을 만들어 비용을 절감해주는 것이 네트워크 슬라이싱이다.

그림 1.  네트워크 슬라이싱이 왜 필요한가?

아래 그림 2는 NGMN의 5G White Paper에 나오는 5G 네트워크 슬라이스 구조이다.

그림 2.  NGMN의 5G 네트워크 슬라이스 구조

E2E Network Slices를 어떻게 만드나?

(1) 5G RAN과 Core: NFV

그림 2은 네트워크 슬라이스의 개념을 표현한 것인데, 다소 추상적이다. 네트워크 슬라이스가 실제 어떻게 만들어지는 지 살펴보기로 하자. 

 

 현재 이동통신망은 단말은 폰이고 RAN(DU, RU)과 Core가 RAN 벤더의 전용 네트워크 장비이다. 

 N네트워크 슬라이스가 만들어질려면 우선 제공되어야 할 기술이 NFV(네트워크 기능 가상화)이다. 네트워크 장비가 아닌 가상화된 상용 서버(COTS)에 Network Function S/W (Packet Core의 MME, S/P-GW, PCRF, RAN의 DU)을 VM에 탑재한다(이게 NFV죠). 그러면 RAN은 에지 클라우드가 되고 Core는 코어 클라우드가 된다. 에지 클라우드와 코어 클라우드에 있는 VM들간의 네트워크 연결은 SDN으로 설정한다. 

 그리고 서비스별로 슬라이스를 - 즉, Phone 슬라이스, Massive IoT 슬라이스, Mission-critical IoT 슬라이스 - 를 생성한다.

 

 

그림 3.  네트워크 슬라이스 만들기

 

서비스별 서버들도 가상화하여 해당 슬라이스에 넣는다. 다음은 각 슬라이스가 구성되는 예시이다.

  • UHD 슬라이스에는 에지 클라우드에 DU, 5G Core (UP), Cache 서버가 가상화되어 들어가고 코어 클라우드에는 5G Core (CP)과 MVO 서버가 가상화되어 탑재된다. 
  • Phone 슬라이스의 코어 클라우드에는 Full Mobility 기능이 다 들어간 5G Core (UP, CP)와 IMS 서버가 가상화되어 탑재되고 Massive IoT slice (예, 센서 네트워크)에는 Mobility Management는 필요없는 가벼운 5G Core가 탑재된다. 
  • Mission-critical IoT 슬라이스에는 transmission delay를 최소화하기 위해 5G Core (UP)와 관련 서버 (예, V2X  서버)가 에지 클라우드로 내려간다.  

이와 같이 서로 다른 요구 사항을 갖는 서비스별로 별도의 슬라이스가 만들어지며 Network Function도 슬라이스마다 다른 위치(에지/코어 클라우드)에 존재하게 된다. 또한 어떤 슬라이스에는 있는 네트워크 기능(예, Charging, Policy Control, 등)이 다른 슬라이스에는 필요없을 수도 있다. 비용 효율적으로 꼭 필요한 만큼만 각자 만들면 된다.   

 

 

그림 4.  네트워크 슬라이스 만들기

출처: https://www.netmanias.com/ko/?m=view&id=blog&no=13250

Network Functions Virtualization

NFV(Network Functions Virtualization )네트워크 기능(***)을 추상화하여 표준화된 컴퓨팅 노드에서 실행되는 소프트웨어를 통해 네트워크 기능을 설치, 제어 및 조작하도록 지원합니다. NFV에는 탄력적 확장 및 자동화와 더불어 새로운 네트워크 서비스를 신속하게 개발하기 위한 클라우드 및 가상화 기술이 통합되어 있습니다. 이러한 기술들은 주로 NFV 및 SDN(Software-Defined Networking) 그룹으로 나뉩니다.

NFV로 해결할 수 있는 문제

NFV 및 SDN 개발의 핵심 원동력은 네트워크, 스토리지 및 컴퓨팅 리소스의 오케스트레이션과 관리를 자동화하려는 욕구에서 비롯됩니다. VM 10대와 컨테이너 수백 개가 있는 하나의 물리적 서버에 대한 시나리오를 상상해 보십시오. 이 개념은 수동 작업이 필요한 경우에는 절대로 확장할 수 없습니다. 자동화를 구현하면 VM, 컨테이너, 라우터, 방화벽, IPS(intrusion prevention system)를 비롯한 VNF(virtualized network function)를 신속하게 가동 또는 중지할 수 있으므로 동적 요구를 충족하기 위해 네트워크 기능을 탄력적으로 확장할 수 있습니다.

 

NFV(Network Functions Virtualization)로 수행할 수 있는 작업

NFV는 수동 프로세스로 인한 병목 현상을 제거하여 비용 효율적인 네트워크 서비스 제공 측면에서 민첩성을 전해줄 뿐만 아니라 새로운 서비스를 온 디맨드 방식으로 구축하도록 지원합니다. 서비스 프로바이더는 NFV를 통해 서비스를 더욱 빠르고 비용 효율적으로 제공하고, 고객의 확장성 및 민첩성 요구에 대응할 수 있도록 자동화를 활용할 수 있습니다.

 

NFV(Network Functions Virtualization)의 작동 원리

NFV의 모듈형 아키텍처는 서비스 프로바이더가 모든 수준에서 자동화를 구현하도록 지원합니다. 이 아키텍처의 주요 구성 요소는 다음과 같습니다.

  • NFVI(NFV infrastructure) 빌딩 블록 — VNF를 호스팅하는 물리적 컴퓨팅, 스토리지 및 네트워킹 구성 요소와 가상화 레이어(Docker와 같은 컨테이너 관리 시스템 또는 하이퍼바이저)를 제공합니다. NFVI는 VNF의 리소스 할당을 제어하는 VIM(NFVI infrastructure manager)을 통해 관리됩니다. OpenStack은 물리적 및 가상 리소스를 제어하는 오픈 소스 VIM의 한 가지 예입니다. 또한 VMWare는 상용 VIM의 대표적 예입니다.

  • VNF — 하나 이상의 네트워크 서비스를 제공하는 소프트웨어 기반 애플리케이션입니다. VNF는 NFVI에서 제공하는 가상화된 인프라를 사용하여 네트워크에 연결하고 프로그래밍 및 확장 가능한 네트워크 서비스를 제공합니다. VNF 관리자는 VNF 인스턴스의 수명과 VNF 소프트웨어의 관리를 지원합니다.

  • MANO(Management and orchestration) — NFV 아키텍처에서 매우 중요한 VNF의 관리 및 오케스트레이션을 제공합니다. MANO는 VNF 및 오버레이 네트워크 서비스 체인을 인스턴스화하는 VIM 및 VNF 관리자에 대한 워크플로우의 자동화, 프로비저닝 및 조율을 통해 네트워크 서비스를 인스턴스화합니다. MANO는 NFV 아키텍처와 기존 OSS/BSS를 연결합니다.

 

출처: https://www.juniper.net/kr/kr/products-services/what-is/network-functions-virtualization/

+ Recent posts