Head(서론)
오늘은 패킷(Packet)에 대해서 깊게는 아니더라도! 간단하게라도 설명을 해드리고 가는게 좋을 것 같아서 소소하게 준비를 해보았습니다. 우리는 정말 거짓말 1도 안보태고 패킷을 쉬지않고 계속 쓰고 있을거에요. 지금 이순간에도!
우리는 유/무선으로 인터넷이라는걸 사용을 하고 있습니다. 지금 저의 글을 읽으시는 여러분도 인터넷을 사용하고 계시기에 읽고 있는거구요. 이때 사용되는 것이 패킷이라는 것입니다. 패킷은 정말 심오해요. 아직 저도 정확하게 잘 모릅니다..(아직 Draft되어있는 글이 있는데, 각자의 영역에 충실하면 되는 것 같다는 글입니다. 뭐 하고싶은 말은 우린 잘 알고 잘 쓰자..!)
잡소리는 여기서 그만두고..우선 이런 설명들을 하기 전에 짚어드릴 내용은 아래와 같습니다.
- OSI 7 Layer (OSI 7 계층) 간단 설명
- Layer별 프로토콜에 정의된 데이터 유닛 설명
위와 같습니다. 먼저 말씀드리자면, 제목에는 Packet Concept이라고 적어놨지만 정확하게는 Packet 이라는 단어 사용 자체가 잘못됐을 수도 있다는 걸 말씀드리고 싶었습니다.
Body(본론)
OSI 7 Layer는 국제표준화기구(ISO)에서 개발한 모델입니다. 네트워크 프로토콜 통신을 계층으로 나누어서 설명해둔 것입니다. 제가 그려온 그림부터 보시죠.
아래 Physical이 Layer 1이고 맨 위에 있는 Application이 Layer 7 입니다.. 그 부분을 안적었네요; 각 계층별로 특징들을 갖고 있는데, 그건 프로토콜 예시를 적어둔 것들을 보면 대충 감이 오실거라고 생각합니다.
이 레이어는 Stack계층이라고도 표현을 하는데 하위 계층으로 내려갈수록 Encapsulation(캡슐화)이 진행되고, 상위 계층으로 올라갈수록 De-Encapsulation(디캡슐화)이 진행됩니다.
이렇게 도식화를 하긴 했는데..사실 그냥 화살표만 그렸…; 그럼 캡슐화를 설명하기 전에 먼저 PDU라는 것부터 설명을 하자면, PDU는 Protocol Data Unit의 줄임말이다.
첫 그림에서 보면 알 수 있듯이 여러 레이어에 겹쳐서 존재하는 PDU도 존재하긴 하지만 프로토콜 별 규정된 데이터 유닛이 존재한다.
우리는 데이터가 통신하는데에 있어서 그 유닛을 표준으로 통신을 하게 되는데 그 모양으로 맞춰주기 위해 캡슐화(디캡슐화)를 진행한다.
각 레이어별 변경되는 부분(입혀지거나/벗겨지거나)에 대해 주황색으로 칠해두었다. 아래 레벨로 내려올 수록 점점 두꺼워 지는 것을 볼 수 있지 않는가? 실제로도 그만큼 용량도 커진다고 보면된다.
간단하게 예를 들어보자면, 내가 친구에게 파일을 1:1로 전송을 한다고 상상해보자.
그럼 내 컴퓨터 화면에서 보이는 딱 그 모습은 우선 Application Layer이다.
왜냐, 나는 무언가를 보내기 위해서 메일이든 뭐든 켰을거지 않은가..!
그럼 거기서 파일첨부를 하고 전송을 누르는 순간 내 파일은 Data라는 단위로 쪼개질 것이다.
그리고 상대편에게 가기위한 열린포트와 순서(TCP)가 붙을 것이고, 주소(IP)가 붙을 것이다.
그 후에 나의 랜선을 타고 친구의 랜선으로(DATA-LINK~Physical)넘어가서 상대편 컴퓨터에서 자기한테 온 PDU가 맞는지 주소(IP)를 보고 벗겨내고 포트와 순서(TCP)도 확인하고 벗겨낸 후에 DATA들을 순서(Sequence)에 맞게 차곡차곡 저장할 것이다.
넘 어지럽게 써놨지만, 내 컴퓨터에서 선으로 나가는 과정까지가 Encapsulation의 과정이고, 선에서 친구의 컴퓨터로 넘어가서 저장되는 과정까지가 De-Encapsulation의 과정이라는 것이다.
저 그림에 있는 네모칸마다 나름의 정해진 크기가 있는데, 그걸 생각을 못하고 준비를 못했다. 다음에는 그 내용에 대해서 설명을 하도록 하겠다. 우선은 이정도의 데이터 흐름 과정만 이해해두어도 OSI 7 계층을 이해하는데에 크게 무리는 없을 것이다.
결론
그럼 내가 왜 위에서 Packet Concept이라고 얘기한게 틀렸을 수도 있다고 했는지 대충 감이 오는 사람이 있을 수도 있다.
설명하자면, 각 레이어 별로 PDU를 보면 패킷이라는 이름은 Network 레벨에서 사용되는 이름이다.
그렇기 때문에 우리가 흔히 얘기할 때 얘기하는 것과는 좀 상이한 의미일 수 있기에 이런 개념을 알고나서부터는 조금은 더 생각하고 용어를 사용할 수 있어야 할 것이다~