프레임(Frame)과 패킷(Packet)

일상 코딩·2023년 3월 11일
0

CCNA

목록 보기
14/17

01.프레임이란?

  • OSI 7Layer2계층인 Data Link 계층에서 전송되는 단위
  • 전송 프레임에는 상위 계층에서 보낸 전송 데이터에 오류 확인을 위한 체크섬, 송수신 호스트의 주소, 기타 프로토콜에서 사용하는 제어 코드 등의 정보가 포함된다.
  • 프레임을 전송받은 호스트는 체크섬 에러를 확인하고 에러 및 변형 등의 오류를 체크한다.
  • 에러 검출 시 재전송을 요구하여 복구 과정을 거친다.

02.프레임 구조

데이터 링크 계층에서 MAC 통신과 프로토콜의 형식을 정의한 규칙

프리엠블 - Preemble (7byte)

  • 이더넷 MAC 프레임의 첫번째 필드로서 01을 반복하는 7byte를 포함하고 수신 시스템에게 프레임이 도착하는 것을 알려주며 입력 타이밍에 수신 시스템이 동기화할 수 있도록 만든다.

시작 프레임 지시기 - Start of Frame Delimeter (1byte)

  • 정상적인 프레임의 시작을 표시(10101011)하는 프레임 동기로 마지막 두 비트는 11이며 수신자에게 이 다음 필드가 목적지 주소임을 알려준다.

목적지 주소 - Destination MAC Address (6byte)

  • 패킷을 수신하는 목적지 MAC주소

발신지 주소 - Source MAC Address (6byte)

  • 패킷을 송신하는 출발지 MAC주소

길이 or 종류 - Type or Length (2byte)

  • 캡슐화되어 있는 패킷의 프로토콜 정의

데이터 - Data / Payload (46~1500byte)

  • 상위 계층의 프로토콜로부터 캡슐화된 데이터가 들어있다.
  • 데이터 필드는 최소 46byte에서 최대1500byte의 크기를 가지고 있다.
  • 상위 계층의 패킷의 길이가 최소길이(46byte)보다 작을경우 크기를 맞추기위해 끝에 padding(0)이 채워진다.

FCS - Frame Check Sequence (CRC) (4byte)

  • 프레임 에러 체크
  • DA+SA+Length+Data의 영역을 계산하여 에러를 판별한다.
  • 송신측에서 CRC를 추가하여 보내고 수신측은 CRC를 체크하여 에러 프레임은 버린다.

  • 표준에서는 모든 10Mbps 이더넷 LAN에서 최소 프레임의 길이를 512bit 또는 64byte로 정의한다. (프리앰블과 SFD 필드 제외)
  • 충돌이 발생하는지 안하는지 감지할 동안 프레임이 계속 전송되고 있어야 충돌이 발생하면 프레임을 폐기하고 재 전송할 수 있기 때문에 신호가 갔다가 다시 돌아오는 시간 만큼 계속 프레임을 보낼려면 전체 왕복 시간이 51.2usec이 소요 되기 때문에 최소 패킷 길이가 512bit=64Byte가 된 것이다.
  • 이더넷 프레임은 최소 길이가 64btye를 가져야만 한다.
  • 헤더와 트레일러는 6btye의 발신지 주소, 6btye의 목적지 주소, 2byte의 길이/종류, 그리고 4byteCRC로 구성되어 18byte이며, 따라서 상위 계층에서 전달된 데이터의 최소 길이는 64 - 18 = 46 byte이다.

03.패킷이란?

  • OSI 7Layer3계층인 Network Layer 에서 네트워크를 통해 전송될 때 L3 스위치, 라우터 등에서 전달하는 전송 단위이다.
  • 패킷은 3계층에서 다루는 내용으로 서로다른 네트워크간 통신이 가능하도록 라우팅을 해주는 영역이다. 과거에는 라우터를 사용하여 라우팅을 실시하였으나 요즘은 L3 스위치로 그 기능을 대신해 가고 있다.
  • 패킷은 3계층에서 생성되며 데이터를 서로 다른 LAN 간에 데이터를 주고 받을 때 사용되는 단위를 말한다.
  • 패킷은 L3 스위치가 L2 스위치로부터 전달받은 정보를 다른 네트워크에 있는 목적지로 전달하며 전달받은 해당 네트워크 상의 L2 스위치가 다시 ARP Table을 참조해 목적지로 전달을 하게 되며 이로써 서로 다른 네트워크 간 데이터 전송은 완료 된다.

04.패킷 구조

컴퓨터 네트워크에서 데이터를 주고받을 때 정해 놓은 규칙

Version - 버전

  • 사용 중인 IP 버전을 식별하는 데 사용됩니다.

TTL (Time to Live)

  • 이 패킷이 네트워크에 남아있을 수 있는 시간입니다.
  • 이 패킷을 처리하는 각 라우터는 이 카운터를 하나 이상 감소 시킵니다.

프로토콜

  • IP 패킷의 데이터 부분이 전달되는 전송 계층 프로토콜
  • TCP (Transmission Control Protocol) 또는 UDP (User Datagram Protocol)입니다.

헤더 체크섬

  • 검증 계산의 기반이 되는 헤더 체크섬 데이터는 헤더 데이터 일 뿐이며 해당 계산 결과는 헤더 체크섬 필드에 저장됩니다.
  • 헤더가 손상되지 않은 경우 IP는 패킷이 양호하다고 간주합니다.

소스 주소

  • 패킷을 네트워크로 보내는 장치의 IP 주소입니다.
  • ICMP (Internet Control Message Protocol) 전송 실패 또는 제어 메시지를 포함하여 네트워크 수준 오류 메시지가 전송되는 곳이기도 합니다.

대상 주소

  • 패킷이 전송되는 주소입니다.
    데이터
  • 이더넷 프레임과 마찬가지로 데이터 부분이 전송 계층의 TCP 또는 UDP로 전송됩니다.

05.프레임과 패킷의 차이점

  • 프레임은 2계층 영역에서의 전송 단위로 보면 되고 패킷은 2계층에서 또 다른 2계층로 전달을 할 경우 중간에 3계층 구간을 거치데 되는데 바로 3계층 구간에서 전달되는 데이터의 단위라고 보면 되겠다.
profile
일취월장(日就月將) - 「날마다 달마다 성장하고 발전한다.」

0개의 댓글