1) Inline
- Packet + Drop/Bypass + Filtering
2) Out of Path
- Packet + Read only, Sensor
3) Proxy
- Socket stream + Filtering
위 세 가지는 어떠한 데이터(패킷, 소켓 스트림)를 다루느냐에 따라 바뀐다.
보통 네트워크를 공부할 때 스위치에 대한 공부가 많을 것이다. 그것이 라우터 일 수도 있다. 네트워크 공부 시 스위치와 같은 장비를 보게되면 Inline, Out of Path, Proxy 중 어떤 구조로 되어있는지 부터 파악 해야 한다.
...
1) 인라인(Inline)은 필터 역할을 한다. 패킷이 인라인 디바이스를 통과해 지나가면 바이패스(허용)할 지 또한 바이패스 할 곳이 여러곳이라면 어디로 보낼 지 그리고 드랍(차단)할 지를 결정한다.
ex) 가장 대표적인 장치는 라우터이다.
2) 아웃오브패스(OutofPath)는 인라인처럼 패킷 단위 데이터를 본다. 다만 읽기만 한다. 센서 즉 인지하는 것이 주된 목적이다. 네트워크의 보안상의 이슈라면 보안 센서, 네트워크 장애 인지라면 장애대응 센서가 된다.
만약 네트워크 센서라고 한다면 거의 대부분은 아웃 오브 패스 구조라고 판단하자.
또한 탭 스위치라는 것이 있는데 이를 통해 패킷을 복사 받는다. 이를 통해 패킷을 읽고 분석해서 센서가 센싱하여 결과로 어떤 현상인지를 알려준다. (탭핑 포인트)
3) 프록시(Proxy) 다루는 데이터 단위가 네트워크 패킷이 아닌 소켓 스트림이다.
만약 패킷에서 스트림을 얻으려면 조립을 해야 하는데, 이를 어려운 작업이다. 예를들어 패킷 천 개를 조립해야 1메가 나오는데, 10메가인 파일을 추출하려면 패킷 1만개를 조립해야하는 상황이 생긴다.
프록시 특징으로는 인라인과 구성면에서 필러링이 가능하다라는 점이 비슷하다. 프록시는 대리 역할이 있어, 대리자를 통해 지나가야 하기 때문에 어플리케이션 스트림을 모두 모니터링 할 수 있는 특징이 있다.
...
그림이로 위 내용을 그려보자.
1) 패킷 데이터를 논하는 수준은 IP 레이어이다.
2) TCP를 추상화한 소켓이 있다.
3) 프록시는 User mode의 '어플리케이션 프록시'이다.
4) 즉 유저 모드, 어플리케이션 프록시, 소켓이기에 데이터의 단위는 스트림(Stream)이 된다.
5) 묶어서 외우자. 유저 모드, 어플리케이션 프록시, 소켓, 스트림
6) 프록시가 나오면 어플리케이션 프록시를 말하며, OSI 5~7계층을 커버한다.
생각해볼점
7) HTTP 프로토콜은 L7 프로토콜이다.
8) HTTP 프로토콜 분석을 위한 구조 3가지는 Inline, Out of Path, Proxy이다.
9) 이 중 L7인 Proxy가 유리하다.
10) L3에서도 할 수 있지만 패킷을 조립하는 등의 작업 비용이 많이 든다.
11) L3 패킷에서는 Inline, Out of Path 방식을 많이 사용하니 외우자.
...
외울것
1) 유저 모드, 어플리케이션 프록시, 소켓, 스트림
2) 패킷, 인라인, 아웃오브패스
'네트워크' 카테고리의 다른 글
Inline 구조 (0) | 2024.11.19 |
---|---|
WAS와 Restful API 그리고 JVM (1) | 2024.11.11 |
인증서 체인이란 (0) | 2024.11.08 |
웹 서비스 구조 이론 (1) | 2024.11.07 |
HTTP 간단 설명 (0) | 2024.11.05 |