2계층 : 물리계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행 할 수 있도록 도와주는 역할을 한다.
맥 주소를 가지고 통신하게 된다.
(맥주소 = 네트워크 세그먼트에서 통신을 위한 네으퉈크 인터페이스에 할당된 고유식별자)
브릿지나 스위치를 통해 맥주소를 가지고 물리계층에서 받은 정보를 전달한다.
주소값은 물리적으로 할당받으며 네트워크 카드가 만들어질 때 부터 맥주소가 정해져있다는 뜻.
주소체계는 계층이 없는 단일구조이며, 잘 알려진 예는 이더넷이다.
=>브릿지, 스위치를 통해 맥주소를 가지고 1계층에서 받은 정보를 전달하며 에러검출/재전송/흐름제어를 한다.
3계층 : 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능(라우팅)
경로를 선택하고 주소를 정하고 경로에 따라 패킷을 전달해 주는 역할을 한다.
서비스 품질(QoS)를 제공하기 위한 기능적 절차적 수단을 제공한다.
라우터가 이 계층에서 동작하며 3계층에서 동작하는 스위치도 있다.
=> 주소부여, 경로 설정
4계층 : 양 끝단(end to end)의 사용자들이 신뢰성있는 데이터를 주고받을수 있도록 해 주어 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해준다.
시퀀스 넘버 기반의 오류 제어 방식을 사용한다.
=>패킷 생성
5계층 : 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공한다.
duplex , half - duplex , full duplex 의 통신과 함께 , 체크 포인팅과 유휴,종료, 다시시작 과정 등을 수행한다.
=> 통신을 하기 위한 세션을 확립/유지/중단(운영체제가 해줌)
6계층 : 코드 간의 번역을 담당하며 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용계층으로부터 덜어준다.
MIME 인코딩이나 암호화 등의 동작이 이루어진다.
=> 사용자의 명령어를 완성 및 결과 표현 , 포장/압축/암호화
7계층 : 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.
예로는 가상터미널 등이 있다.
=> 네트워크 소프트웨어 UI 부분 , 사용자의 입출력(I/O)부분
IP(internet protocol)
TCP(Transmission Control Protocol)
3way-handshake - SYN(접속 요청) , ACK(요청 수락)을 통해서 확인한다.
A : SYN 전송 -> B : SYN , ACK 전송 -> A : ACK 전송
1계층 = Node to Node 간의 신뢰성 있는데이터 전송을 담당한다.
MAC 주소를 핸들링하고, 데이터 패킷을 전기신호로 변환하여 선로를 통해 전달할 수 있게 준비한다.
2계층 = IP를 담당하는 부분. 원천지(Origin)과 목적지(Destination)에 관한 정보를 첨부한다.
IP는 최대한 빨리 보내려고 한다. 그래서 전달여부를 보증하지 않고 빨래 보내는것에 집중한다.
IP(비연결서비스 제공 , 발신지와 목적지까지의 라우팅 경로 결정) , ICMP(IP제어,메시지 기능) , ARP(IP주소를 이용해 상대방의 MAC 주소를 알아옴) , RARP(MAC주소에 해당하는 IP주소를 알아오는 프로토콜)
3계층 = TCP/UDP를 담당하는 계층
데이터의 전달을 보증하고 보낸 순서대로 받게 해줌.
TCP(연결지향 , 보장된 세그먼트로 전달하기에 신뢰성 있음 , 연결을 위한 초기 설정 시간이 걸림)
UDP(비연결 지향 , 데이터가 도착했는지 확인 X , 빠르고 네트워크 부담을 줄일수있지만 신뢰성이 좀 떨어짐.)
4계층 = HTTP/FTP를 담당하는 계층
서버나 클라이언트 응용 프로그램이 작동한다.
브라우저/텔넷 같은 서비스가 동작.
DNS(인터넷에서 사용하는 이름을 IP주소로 변화), SNMP(네트워크 장비를 모니터링,제어) , FTP(TCP환경에서 파일 전송) , TFTP(UDP 환경에서 파일 전송) , HTTP(웹상에서 정보를 주고받을 수 있는 프로토콜)
라우터 : 컴퓨터 네트워크 간에 데이터 패킷을 전송하는 네트워크 장치.
패킷의 위치를 추출해 그 위치에 대한 최적의 경로를 지정하고, 이 경로를 따라 다음 장치로 전달한다.
즉 서로 다른 네트워크 간에 최적의 경로를 찾아내는 알고리즘을 활용해 중계 역할을 해 주는 장치.
게이트웨이 역할을 수행하기도 한다. -> 리피터 O
허브 : 이더넷 네트워크에서 여러대의 컴퓨터 , 네트워크 장치를 연결하는 장치이다.
여러 대의 컴퓨터 , 네트워크 장비가 별모양으로 서로 연결된다.
허브에 라우터나 3계층 장비가 연결되어 있으면 상위 네트워크와 연결이 가능해진다.
보통 UTP , RJ45 커넥터가 사용된다. -> 리피터 X
리피터 : 중계기라고도 한다.
원본이 아날로그 , 디지털이냐에 상관없이 입력 신호를 증폭 , 복원시키는 아날로그 장치
재전송을 위해 디지털 입력 신호를 증폭하고 형태를 바꿔 결합을 수행하는 디지털 장치
즉 , 받은 데이터를 증폭시키는 장치라고 할 수 이다.
브리지 : 여러개의 네트워크 세그먼트를 연결해 준다. 단순히 주변네트워크 세그먼트로 다시 보낸다기 보다 특정 네트워크로부터 오는 트래픽을 관리하게 된다.-> 리피터 X
랜선(UTP , RJ45)
utp = 쉴드처리 없이 꼬임만 되어있는 케이블
NIC : 컴퓨터를 네트워크에 연결하여 통신하기 위해 사용하는 하드웨어 장치.
네트워크 카드 , 랜카드 등으로 불린다.
Mac주소 : 데이터 링크 계층에서 통신을 위한 네트워크 인터페이스(NIC)에 할당된 고유 식별자 이다.
ARP : 주소 결정 프로토콜(Address Resolution Protocol)는 네트워크 상에서 IP주소를 물리적 네트워크 주소로 대응시키기 위해 사용되는 프로토콜이다.
RARP : IP호스트가 자신의 MAC은 알지만 IP주소를 모르는 경우, 서버로부터 IP주소를 알아내기 위해 사용한다.
네트워크 토폴로지
스타형 : 허브에서 다른 노드로 전달되는 경로가 단일경로
트리형 : 스타형의 변형으로 , 여러 허브를 사용해 tree형태가 나타남
버스형 : 가장 대표적인 패킷망 네트워크. 버스라는 공동배선에서 각 노드가 연결
원형 : 좌우가 인접한 노드와 연결
망형 : 모든 노드가 마치 그물처럼 직접 연결되어 있는 구조
-isoiec 27001 : 국제표준화기구(iso)와 국제전기기술위원회(iec)에서 제정한 정보보호 관리체계에 대한 국제 표준이자 정보보호 분야에서 가장 권위 있는 국제 인증
전이중 : 서로 다른 두개의 단방향 전송으로 생각할 수 있다.
반이중 : 양측이 동시에 전송할 수 없는 통신이다.
게이트웨이
컴퓨터 네트워크에서 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 컴퓨터나 소프트웨어를 두루 일컫는 말
서브넷 마스크 : IP주소를 서브넷으로 나누는데 사용되는 32비트 숫자이다.
IP주소는 네트워크와 호스트를 식별하기 위해서 사용되며 , 서브넷 마스크는 IP주소를 네트워크 부분과 호스트 부분으로 구분한다
DMA
원래는 I/O가 완료되면 디바이스 컨트롤러는 인터럽트 라인을 세팅하고(인터럽트를 발생시키고) CPU는 인터럽트 라인에서 인터럽트의 존재를 확인하고 현재 CPU에 올라와있는 프로그램을 PCB에 저장한 뒤 인터럽트를 처리해서 I/O device의 local buffer에 있는 데이터를 메모리로 옮긴다. cpu는 로컬버퍼와 메모리 둘 다 접근 가능하다. 메모리는 원칙적으로는 cpu만 접근 가능한데, 그렇게 되다 보니까 cpu가 인터럽트를 너무 많이 받게 되어 cpu 사용의 효율성이 떨어지게 되는거다. 따라서 cpu 이외의 메모리 접근이 가능한 장치를 하나 더 두게 되는데 이것이 바로 DMA(Direct Memory Access)이다.
DMA는 빠른 입출력 장치로 일종의 컨트롤러인데, 메모리의 속도와 가까운 속도로 처리할 수 있다. (하드웨어 장치임) DMA는 CPU가 I/O devie들의 메모리 접근 요청에 의해 자주 인터럽트를 당하는 것을 막아준다. I/O device의 device controller가 local buffer에 메모리를 저장하고, 다 완료(수행)했으면 cpu에 인터럽트를 걸던 것에서, I/O device의 device controller가 local buffer에 메모리를 저장하고 DMA는 local buffer에서 메모리로 데이터를 읽어오는 작업을 하고,(이 때 byte 단위가 아니라 block 이라는 큰 단위로 정보를 읽어옴), CPU 에게 DMA가 인터럽트를 걸어 해당 작업의 완료를 알려주는 것이다. DMA의 존재는 인터럽트의 빈도를 줄여주어 CPU를 효율적으로 관리하고 입출력 연산을 빠르게 수행할 수 있게 된다.
이 외에 할것
QoS , 시퀀스 넘버 , duplex , half - duplex , full duplex , MIME