블랙박스
- 프로그램상의 블랙박스란 일종의 입출력 결과만을 고려하는 모듈(박스)라고 생각할 수 있다.
- 과정을 사용자가 결과만을 이용해 실제 사용 목적에 집중할 수 있게 한다.
- 큰 블랙박스 내부에 작은 결합으로 이루어져 있을 수 있다.
프로토콜(Protocol)
- HTTP, SMTP , FTP , TCP, UDP ...등 일종의 통신 약속을 의미한다.
- 발신자와 수신자간의 공통언어 및 약속을 규범한것이다.
- 즉 네트워크를 학습한다는 것은 수많은 프로토콜을 학습하는 것과 같은 말이다.
TCP/IP 5계층
1계층: 물리계층
데이터정보를 전기적 신호로 변형해 직접 전달하는 계층.
2계층: 데이터 링크 계층
MAC (Media Access Control address) 를 통해 수신 주소의 고유 기기를 구분하고 프래임을 전달하는 계층.
MAC 주소
Media Access Control Address의 약자, 랜 카드마다 할당되어 있는 고유한 물리 주소를 말한다.
길이는 48비트이며, 네트워크 상의 다른 장치들은 이 주소를 사용해 네트워크 내의 특정한 포트를 찾는다.
네트워크 상에서 설정된 논리 주소인 IP 주소와는 달리 변경할 수 없다.
- 다음과 같이 확인할 수 있다.

- OUI는 이더넷 인터페이스를 제조하는 벤더(메이커) 식별 코드.
- 뒤 24비트는 시리얼 넘버
주요 기능 2가지
- 주소 할당 : 물리계층으로부터 받은 신호들이 네트워크 상의 장치에 올바르게 안착할 수 있게 한다.
- 오류 감지 : 신호가 전달되는동안 오류가 포함되는지 감지한다 오류가 감지되면 데이터 링크 계층은 해당 데이터를 폐기.
3계층: 네트워크 계층
IP주소를 이용해 출발지에서 목적지까지 정확하게 데이터를 보내는 계층
- 데이터를 패킷 단위로 잘개 쪼개고 송수신 주소를 명시하고 라우팅을 수행하는 계층.
- 라우팅 : 패킷을 최종 목적지로 경로 설정.
- URL이 주어지면 DNS(Domain Name Resolution)을 통해 IP 주소를 찾고, 실제 패킷은 IP 주소를 향해 전송된다.
4계층: 트랜스포트 계층
두 컴퓨터 사이의 신뢰성있는 데이터를 보장 , 포트를 이용해 사용자의 특정 에플리케이션으로 정확하게 전달.
- 네트워크 혼잡 상황에 따라 패킷의 전송량을 조절하여 패킷의 흐름을 제어하고 패킷 전송의 오류를 점검해서 수신지 컴퓨터까지 패킷이 제대로 도착했는지 확인하는 역할.
- 포트는 16비트를 사용하는 포트 번호는 0~65535번까지 65536(2의 16승) 개의 번호를 사용할 수 있다.
- 일반적으로 기본포트(Well Known port)는 0~1023번 까지 지정되어 있다.
- 일반적으로 알려진 포트로 FTP(20) SSH(22) SMTP(25) HTTP(80) POP3(110) IMAP4(143) HTTPS (443) 등이 있다.

포트 이미지 참조링크
5계층: 애플리케이션 계층
프로그램 구현체와 사용자 인터페이스를 의미한다.
OS에서 제공하는 L4 API를 활용해 통신 프로그램이 구현된다.
HTTP, FTP, SSH, SMTP, POP 등 다양한 프로토콜이 활용된다.
통신 데이터 생성 과정

이미지 출처 : 그림으로 배우는 네트워크 강의(향로)
계층을 타는 순서는 역순일 수 있다.
데이터를 전달하는 경우에는 그림과 같이 이루어진다고 생각된다.