1. Introduction to Unicast Address
1) Introduction to Unicast Address
- 특정 장비의 고유 주소로 식별된 하나의 네트워크 목적지로 데이터를 송신하는 방식
- 일반적으로 1:1 또는 One-to-One 통신이라고 명칭
2. Bridge and Switch Receives Unicast
- 모든 네트워크 장비들은 패킷을 수신하면 S-MAC Learning 하고 D-MAC을 확인
- Bridge와 Switch는 수신한 패킷의 D-MAC이 본인과 일치하면 본인이 처리해야 하는 상위 Layer의 Header 정보를 확인하며 이때, Bridge나 Switch에 IP 설정이 없으면 수신한 패킷의 상위 Layer 정보와 비교할 대상이 없으므로 해당 패킷은 Drop
1) Hub Receives Unicast
- Unicast, Multicast, Broadcast 등 어떤 프레임이 수신되어도 Flooding
2) Bridge Receives Unicast
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인임을 확인하고 자신이 처리해야 하는 패킷임을 확인하고 Protocol이 1인 ICMP임을 확인하고 Type과 Code 정보를 확인하여 본인에게 전송된 ICMP Request임을 확인
- ICMP Request의 S-IP로 ICMP Reply를 생성하여 전송
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인과 다름을 확인하여 본인이 처리하지 않아도 되는 패킷으로 분류되어 해당 패킷을 Drop
- S-MAC Learning 하고 D-MAC이 본인이 아님을 확인하고 D-MAC이 FDB에 정보가 있는지 확인하고 없으면 Unknown Unicast로 인지하여 수신한 포트를 제외한 모든 포트로 Flooding
- Host와 Router는 본인의 MAC과 다르면 패킷을 Drop 하지만 Bridge와 Switch는 Unknown Unicast인지 Known Unicast인지 구분하여 처리
3) Switch Receives Unicast
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인임을 확인하고 자신이 처리해야 하는 패킷임을 확인하고 Protocol이 1인 ICMP임을 확인하고 Type과 Code 정보를 확인하여 본인에게 전송된 ICMP Request임을 확인
- ICMP Request의 S-IP로 ICMP Reply를 생성하여 전송
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인과 다름을 확인하여 D-IP가 속해있는 라우팅 테이블이 있는지 확인
- 패킷의 D-IP가 Longest Math Rule에 포함되는 라우팅 테이블의 Next-Hop이 Local이고 패킷이 수신된 인터페이스와 동일 네트워크이므로 해당 패킷을 Drop
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인과 다름을 확인하고 D-IP가 속해있는 라우팅 테이블이 있는지 확인
- 패킷의 D-IP가 Longest Math Rule에 포함되는 라우팅 테이블의 Next-Hop이 Local이고 패킷이 수신된 인터페이스와 다른 네트워크이므로 ARP Table에 D-IP에 대한 MAC을 확인하고 FDB에서 MAC에 대한 포트 정보를 확인하고 해당 패킷을 라우팅하여 전달
- S-MAC Learning 하고 D-MAC이 본인이 아님을 확인하고 D-MAC이 FDB에 정보가 있는지 확인하고 없으면 Unknown Unicast로 인지하여 수신한 포트를 제외한 모든 포트로 Flooding
- Host와 Router는 본인의 MAC과 다르면 패킷을 Drop 하지만 Bridge와 Switch는 Unknown Unicast인지 Known Unicast인지 구분하여 처리
3. Host and Router Receives Unicast
- 기본적으로 Host는 데이터를 수신해도 스위칭과 라우팅 과정 없이 처리
- Host와 Router는 기본적으로 수신한 패킷의 D-MAC이 본인이 아니면 처리 대상이 아니므로 바로 Drop
1) Host Receives Unicast
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인임을 확인하고 자신이 처리해야 하는 패킷임을 확인하고 Protocol이 1인 ICMP임을 확인하고 Type과 Code 정보를 확인하여 본인에게 전송된 ICMP Request임을 확인
- ICMP Request의 S-IP로 ICMP Reply를 생성하여 전송
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인과 다름을 확인하고 본인이 처리하지 않아도 되는 패킷으로 분류되어 Drop
- S-MAC Learning 하고 D-MAC이 본인과 다름을 확인하고 본인이 처리하지 않아도 되는 패킷으로 분류되어 Drop
2) Router Receives Unicast
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인임을 확인하고 자신이 처리해야 하는 패킷임을 확인하고 Protocol이 1인 ICMP임을 확인하고 Type과 Code 정보를 확인하여 본인에게 전송된 ICMP Request임을 확인
- ICMP Request의 S-IP로 ICMP Reply를 생성하여 전송
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인과 다름을 확인하여 D-IP가 속해있는 라우팅 테이블이 있는지 확인
- 패킷의 D-IP가 Longest Math Rule에 포함되는 라우팅 테이블의 Next-Hop이 Local이고 패킷이 수신된 인터페이스와 동일 네트워크이므로 해당 패킷을 Drop
- S-MAC Learning 하고 D-MAC이 본인임을 확인하고 EtherType이 IP임을 확인하고 D-IP가 본인과 다름을 확인하여 D-IP가 속해있는 라우팅 테이블이 있는지 확인
- D-MAC이 본인임을 확인하면 수신한 Frame을 'CRC 32bit' 값을 생성하여 FCS Field와 비교
- 'CRC 32bit' 값이 FCS와 같지 않으면 Error 발생으로 인지하여 Drop하고 같으면 정상으로 인지
- 패킷의 D-IP가 Longest Math Rule에 포함되는 라우팅 테이블의 Next-Hop이 Local이고 패킷이 수신된 인터페이스와 다른 네트워크이므로 ARP Table에 D-IP에 대한 MAC을 확인하고 FDB에서 MAC에 대한 포트 정보를 확인하고 해당 패킷을 라우팅하여 전달
- 라우팅 전 TTL 값을 1 감소시키며 TTL이 0일 경우, 상대방에게 ICMP TTL Expired Message를 송신하고 해당 패킷을 Drop
- S-MAC Learning 하고 D-MAC이 본인과 다름을 확인하고 본인이 처리하지 않아도 되는 패킷으로 분류되어 Drop
- 본 글은 Unicast 동작 방식에 대한 설명이며 아래 링크로 연결된 유튜브 내용을 참고하여 작성
- 해당 유튜버에게 블로그 업로드를 허가받았으며 원본 내용을 보고 싶으신 분들은 아래 영상을 참고
- URL : https://www.youtube.com/watch?v=uLYfBjejK44
- URL : https://www.youtube.com/watch?v=Qn7OXDxN2Lk
'Network > ARP, ICMP' 카테고리의 다른 글
[Casts] Broadcast 동작 방식 (2) | 2024.12.20 |
---|---|
[Casts] Multicast 동작 방식 (0) | 2024.12.18 |
Traceroute 동작 과정 (0) | 2024.12.14 |
ICMP Redirect (1) | 2024.12.12 |
ICMP Time Exceeded (0) | 2024.12.10 |
ICMP Destination Unreachable (0) | 2024.12.08 |
ICMP Request and Reply (0) | 2024.12.06 |
Introduction to ICMP and Header (0) | 2024.12.04 |