▶ 왜 계층화를 이용하는가?
* 복잡한 시스템을 다루기 위함.
* 명시적 구조는 복잡한 시스템 조각 간 식별과 관계 정의를 도움
* 모듈화는 시스템의 유지보수를 쉽게 함
▶ ISO/OSI reference model
* network edge간 통신을 위해 ISO 회사가 만든 OSI 7계층
* 계층을 거치며 데이터는 Encapsulation(캡슐화)되고, Decapsulation(캡슐화의 역과정)된다.
* Encapsulation은 헤더를 붙이는 과정, Decapsulation은 헤더를 해석하는(제거하는) 과정이다.
* 각 계층마다 데이터는 우측의 명칭대로 불린다.
* 애플리케이션 계층 : 네트워크 애플리케이션의 이용을 돕는다. FTP, SMTP, HTTP 등이 있다.
source data → message |
* 프레젠테이션 계층 : 애플리케이션이 데이터를 해석하도록 돕는다. encryption 등이 있다.
* 세션 계층 : 데이터 교환의 recovery, checkpointing, synchronization (회복, 검토, 동기화)를 진행한다.
* 트랜스포트 계층 : 클라이언트와 서버 간 메세지를 전송한다. TCP, UDP 등이 있다.
message → segment(M+Ht) |
* 네트워크 계층 : 출발지에서 목적지로 데이터그램을 라우팅한다(==패킷을 전달한다).
segment → datagram(M+Ht+Hn) |
* 링크 계층 : 이웃하는 네트워크 요소 간의 데이터 전달을 수행한다. 이더넷, PPP 등이 있다.
datagram → frame(M+Ht+Hn+HI) |
* 피지컬(물리) 계층 : 물리적 전송 매체(케이블)을 통해 비트를 전송한다.
frame → bits |
▶ Internet protocol stack
* 위의 7계층에서 데이터, 프로세스 동작에 관련된 presentation과 session이 제외된 표준. 5개의 Internet 계층으로 이루어진다.
▶ Network security
* 과거에는 대부분 엔지니어만 네트워크를 사용했으므로 보안 면은 별로 고려하지 않음
* 다양한 유저들이 인터넷을 사용하게 되면서 보안 문제가 대두됨
* 보안은 모든 레이어(all layers)에 대해 고려되어야 함
▶ Bad guys
* Bad guys : 사용자(host)의 Internet에 malware를 심어 이를 통해 이득을 취하는 사람들
* malware는 자동 복제되어 감염되는 특성이 있으며 virus와 worm으로 나뉨
* virus : 사용자(숙주)의 도움이 있어야 작용 (ex: 이메일 첨부 파일을 열면 바이러스에 걸림)
* worm : 사용자의 도움 없이 self executed가 가능
▶ Bad guys의 공격 방식
* Dos : 특정 target에 대량의 접속을 유발해 마비시키는 공격 방식. botnet(감염된 컴퓨터)가 이용될 수 있다.
* 스니핑(sniffing) : 한 기기가 다른 기기로 데이터를 전송할 때 공격자의 network도 이를 읽음
* 스푸핑(spoofing) : 수신자에게 공격자가 전송하는 잘못된 패킷을 전송