sungwony

[Network] 터널링과 캡슐화 본문

development/etc

[Network] 터널링과 캡슐화

일상이상삼상 2019. 10. 17. 13:33

네트워크 터널링에 대해 학습하면서 간단히 정리


터널링(Tunneling)

 

* 정의 : 데이터 스트림을 인터넷 상에서 가상의 파이를 통해 전달시키는 기술

실제로 여러 홉을 거쳐서 가야하는 목적지를 마치 터널을 파서 다음 홉에 있는것처럼 보이게 하는 기술
출발지 호스트와 목적지 호스트에서만 사용하고 그 사이에서는 사용하지 않는 프로토콜을 전송하여 양측간 통신이 가능하게끔 만들어 주기 위함. 여기에서 핵심이 되는 기술이 캡슐화이다.
캡슐화는 OSI 7 계층을 참조하여 통신을 하기 위해 하위계층에서 상위계층 데이터를 포장하는 개념이다. 즉 모든 계층의 데이터를 캡슐화하여 전송하고 데이터가 목적지에 도착한 뒤에 디캡슐화 하는 전체의 과정을 터널링이라고 부른다.
이러한 터널링은 크게 3가지의 요소로 나뉘어 진다.
 - 승객 프로토콜(Passenger Protocol) : 캡슐화가 되어야 할 프로토콜들
 - 전달 프로토콜(Carrier Protocol) : 캡슐화 시킬 프로토콜
 - 전송 프로토콜(Transport Protocol) : 전단 프로토콜을 끌고 갈 프로토콜
내부네트워크에서만 사용되는 승객프로토콜을 전달프로토콜의 데이터 안으로 집어넣은 뒤 전송프로토콜을 통해 목적지로 이동시킨다. 그리고 목적지에 도착하면 출발지에서 했던 캡슐화를 거꾸로 하여 전달프로토콜 안에 들어있던 승객프로토콜을 동작시켜서 원하는 목적지로 이동한다.

캡슐화(Encapsulation)


네트워크를 계층별로 나누어 상위 계층의 데이터를 하위 계층의 헤더 뒤에 감싸는 방식. 예를들어 7계층의 데이터는 6계층의 헤더 뒤에 감싸지고, 6계층의 데이터는 5계층의 헤더 뒤에 감싸진다. 이렇게 실제 데이터는 캡슐화하여 최종 목적지에서 디캡슐레이션 하여 실제 전송하고자 하는 데이터를 추출한다.

 

출처

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

https://m.blog.naver.com/ccw928/220610767590

 

'development > etc' 카테고리의 다른 글

[Pro Git2] 키워드 정리  (0) 2018.06.05
[JAVA] AES 파일암호화  (1) 2017.06.09
프로그래밍 강좌  (0) 2017.04.06