패킷의 수명

패킷의 수명 (Life of a Packet)

이 문서 페이지는 세 가지 다른 시나리오를 설명해 eBPF 데이터패스 관점에서 패킷의 수명을 개괄해요. 엔드포인트 간 연결, 엔드포인트에서의 이그레스, 엔드포인트로의 인그레스 흐름을 알아볼게요.

출처: Life of a Packet

본문

이 문서 페이지는 세 가지 다른 시나리오를 설명해 eBPF 데이터패스 관점에서 패킷의 수명을 개괄합니다.

Video

Cilium 내에서 사용할 수 있는 도구도 탐구하며 이 주제의 영상 설명을 eCHO Episode 51: Life of a Packet with Cilium에서 볼 수도 있어요.

엔드포인트 간 (Endpoint to Endpoint)

먼저 이그레스와 인그레스에 선택적 L7 Policy가 있는 로컬 엔드포인트 간 흐름을 보여 줍니다. 이어서 소켓 계층 적용이 활성화된 같은 엔드포인트 간 흐름을 보여 줘요. TCP 트래픽에 소켓 계층 적용이 활성화되면 연결을 시작하는 핸드셰이크는 TCP 상태가 ESTABLISHED가 될 때까지 endpoint policy 객체를 통과합니다. 그런 다음 연결이 ESTABLISHED된 후에는 L7 Policy 객체만 여전히 필요합니다.

엔드포인트에서 이그레스

다음으로 선택적 오버레이 네트워크가 있는 로컬 엔드포인트에서 이그레스를 보여 줍니다. 선택적 오버레이 네트워크에서 트래픽은 오버레이에 해당하는 Linux 네트워크 인터페이스 밖으로 전달됩니다. 기본 경우 오버레이 인터페이스는 cilium_vxlan으로 명명됩니다. 위와 유사하게, 소켓 계층 적용이 활성화되고 L7 프록시가 사용 중이면 TCP 트래픽에 대해 엔드포인트와 L7 Policy 사이에서 endpoint policy 블록을 실행하는 것을 피할 수 있어요. 선택적 L3 encryption 블록은 활성화되면 패킷을 암호화합니다.

엔드포인트로 인그레스

마지막으로 선택적 오버레이 네트워크가 있는 로컬 엔드포인트로의 인그레스를 보여 줍니다. 위와 유사하게 소켓 계층 적용을 사용해 프록시와 엔드포인트 소켓 사이의 일련의 정책 순회를 피할 수 있어요. 패킷이 수신 시 암호화되어 있다면 먼저 복호화된 후 정상 흐름으로 처리됩니다.

이로써 데이터패스 개요가 완성됩니다. 더 많은 BPF 특수성은 BPF and XDP Reference Guide에서 찾을 수 있어요. L7 Policy를 확장하는 방법에 대한 추가 세부 사항은 Envoy 섹션에 있습니다.

더 알아보기 (Learn more)