반응형
- OSI 7계층이란 무엇인가? - 네트워크 통신이 일어나는 과정을 7단계로 나눈 ISO에서 정의한 네트워크 표준 모델
- 물리 계층
- 물리 계층의 특징은? - 전기적, 기계적, 기능적인 특성을 이용해서 통신 케이블로 데이터를 전송하는 물리적인 장비
- 사용되는 통신 단위 - bit
- bit - 0과 1로 이루어진 데이터 단위
- 사용되는 장비 - 통신 케이블, 리피터, 허브
- 통신 케이블 - 서버, 스위치, 컴퓨터등 정보통신기기들을 서로 연결하기 위해 사용하는 선
- 리피터 - 신호를 받아 증폭하여 데이터를 전송하는 장비
- 허브 - 네트워크 장비와 장비를 연결해주는 기능을 수행하는 장비
- 일종의 멀티포트 리피터
- 사용되는 통신 단위 - bit
- 물리 계층의 특징은? - 전기적, 기계적, 기능적인 특성을 이용해서 통신 케이블로 데이터를 전송하는 물리적인 장비
- 데이터 링크 계층
- 데이터 링크 계층의 특징은? - 인접한 네트워크 노드끼리 데이터를 전송하는 기능과 절차 제공
- 전송되는 단위는? - 프레임
- 사용되는 장비 - 브리지, 스위치
- 브리지
- 스위치
- 데이터 링크 계층 구조는 어떻게 이루어져 있는가? - MAC, LLC
- MAC - 물리적인 부분 48bit(6byte)로 구성, 각 바이트마다 16진수로 구성, 앞3자리는 Organization Unique Identifier(OUI)로 제조사 식별코드가 있고, 나머지 3자리는 제조사의 일련번호가 들어가 있기 때문에 주소가 Unique하다.
- LLC - 논리적인 부분 Protocol Data Unit(PDU)를 만들고 3계층과 연결
- PDU란? - 데이터 통신에서 상위 계층이 전달한 데이터에 붙이는 제어정보
- 데이터 링크 프로토콜 종류
- SDLC (Synchronous Data Link Protocol)
- HDLC (High-Level Data Link Control)
- SLIP (Serial Line Interface Protocol)
- PPP (Point - to - Point Protocol)
- LCP (Link Control Protocol)
- LAP (Link Access Protocol)
- NCP (Network Control Protocol)
- http://contents.kocw.or.kr/contents4/document/lec/2013/Mokwon/LeeHyeuntae/9.pdf
- 회선제어란? - 신호간의 충돌이 발생하지 않도록 제어하는 것
- ENQ/ACK 기법
- Polling 기법
- 흐름제어란? - 송수신자간 데이터를 처리하는 속도차이를 해결하기 위한 제어
- Stop & Wait - http://www.ktword.co.kr/test/view/view.php?m_temp1=1355
- 오류제어란? - 전송중 오류나 손실 발생 시 재전송 수행
- Stop and Wait ARQ - 전송측에서 NAK를 수신하면 재전송, 주어진 시간에 ACK가 안오면 재전송
- Go Back n ARQ - 전송된 프레임이 손상되면 확인된 마지막 프레임 이후로 보내진 프레임을 재전송
- Selective Repeat ARQ -GBn ARQ 방식과 다르게 손상되거나 분실된 프레임만 재전송, 별도의 데이터 재정렬을 수행해야 하며, 별도의 버퍼를 필요로함
- 오류 발생 원인 - 감쇠, 지연 왜곡, 상호 변조 잡음, 충격 잡음
- 감쇠 - 전송 신호가 전송 매체를 통과하는 과정에서 거리에 따라 점차 약해지는 현상
- 리피터를 통하여 감쇠를 막을 수 있다
- 지연 왜곡 - 주로 유선 전송 매체에서 발생하며 하나의 전송 매체를 통해 여러 신호를 전달했을 경우 주파수에 따라 속도가 달라지면서 생기는 오류
- 상호 변조 잡음 - 서로 다른 주파수들이 하나의 전송 매체를 공유할 때 주파수 간 합이나 차로 인해 새로운 주파수가 생성되는 잡음
- 충격 잡음 - 번개와 같은 외부적인 충격이나 기계적인 통신 시스템의 결함 등 순간적으로 높은 진폭이 발생하는 잡음
- 감쇠 - 전송 신호가 전송 매체를 통과하는 과정에서 거리에 따라 점차 약해지는 현상
- 오류 유형 - 단일 비트 에러, 다중 비트 에러, 버스트 에러
- 단일 비트 에러 - 하나의 비트가 변경된 에러
- 다중 비트 에러 - 두개 이상의 비트가 변경된 에러
- 버스트 에러 - 두개 이상의 연속적인 비트가 변경된 에러
- 오류 수정 방식 - FEC, BEC
- FEC(Forward Error Correction) - 전진 에러 수정
- 송신측이 프레임에 부가적 데이터를 첨가하여 전송하고, 수신측이 이 부가적 데이터로 에러 검출 및 에러 수정을 하는 방식
- 수신측이 에러 검출시 재전송 요구 없이 스스로 수정함
- 송신측이 한 곳이고 수신측이 여러 곳일 때나 채널 환경이 열악한 곳이나 높은 신뢰성이 요구되는 곳에서 주로 사용
- 에러가 발생해도 재전송 요구없이 수정이 가능하므로 실시간 처리 및 높은 처리율 제공
- 원래 비트보다 큰 확장 비트로 인해 전송 효율이 떨어짐
- BEC(Backword Error Correction) - 후진 에러 수정
- 송신측이 프레임에 확장 비트를 첨가하여 전송하고, 수신측이 이를 토대로 에러를 검출시 재전송을 송신측에 요구(ARQ)하는 방식
- FEC(Forward Error Correction) - 전진 에러 수정
- 에러 검출 방식 - 패리티 검사, CRC, 체크섬, 해밍 코드
- 패리티 검사 - 1의 개수를 짝수로 맞춰서 보낼지 홀수 개로 맞춰서 보낼지 송신측과 수신측이 약속하고, 여분의 비트(패리티 비트)를 채워 보내는 것
- 홀수 개의 에러만 검출 할 수 있다는 단점이 존재 - 이를 해결하기 위해 2차원 패리티 검사가 나옴
- 2차원 패리티 검사 - 수평과 수직으로 패리티 비트를 추가하고 모두 카운트
- 수평에서 짝수개가 변한다고 해도 수직 패리티 검사에서 검출이 가능
- 수평과 수직으로 짝수 개씩 똑같이 바뀐다면 검출 불가능
- 2차원 패리티 검사 - 수평과 수직으로 패리티 비트를 추가하고 모두 카운트
- 홀수 개의 에러만 검출 할 수 있다는 단점이 존재 - 이를 해결하기 위해 2차원 패리티 검사가 나옴
- CRC - 순환 중복 검사 - 패리티 검사의 한계를 보완하기 위해 나온 에러 검출 방식
- 데이터에 에러가 발생했는지 확인하는 코드를 확장 데이터로 덧붙여서 보내는 방식
- 체크섬 - 데이터의 길이와 관계없이 에러를 검출하는 기법
- 데이터 링크 계층보다는 네트워크 및 전송 계층에서 더 자주 사용됨
- 해밍 코드 - 하나의 데이터 단위에 대해 충분한 패리티 비트를 추가해 에러를 검출하고 수정까지 할 수 있는 방법
- 패리티 검사 - 1의 개수를 짝수로 맞춰서 보낼지 홀수 개로 맞춰서 보낼지 송신측과 수신측이 약속하고, 여분의 비트(패리티 비트)를 채워 보내는 것
- 데이터 링크 계층의 특징은? - 인접한 네트워크 노드끼리 데이터를 전송하는 기능과 절차 제공
- 네트워크 계층
- 네트워크 계층의 특징은? - 여러개의 노드를 거칠 때 마다 경로를 찾아주는 역할을 함
- 헤더 추가 - ip 헤더
- 전송되는 단위 - 패킷
- 패킷 - 데이터를 전송하는 하나의 단위, 한 네트워크 회선에서 데이터 한 묶음의 단위
- 사용되는 장비 - 라우터
- 라우터 - 패킷의 위치를 추출하여, 그 위치에 대한 최적의 경로를 지정하며, 이 경로를 따라 데이터 패킷을 다음 장치로 전향시키는 장치 -> 네트워크와 네트워크 간의 경로를 설정하고 가장 빠른 길로 트래픽을 이끌어 주는 네트워크 장비
- 라우터의 부가적인 기능 - NAT, VPN, QoS
- NAT - TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술
- VPN - 가상사설망으로 데이터가 지나가는 암호화된 터널을 만들고 사용자의 IP를 숨겨줌
- QoS - 다른 응용프로그램, 사용자, 데이터 흐름등에 우선 순위를 정하여, 데이터 전송에 특정 수준의 성능을 보장하기 위한 능력
- 라우팅 - 네트워크에서 특정 경로로 데이터를 보낼 때 사용되는 과정(최적경로 설정)
- 라우팅의 구성요소 - 패킷, 네트워크 주소, 메트릭, 다음 게이트웨이, 인터페이스
- 패킷 - 데이터를 전송하는 하나의 단위, 한 네트워크 회선에서 데이터 한 묶음의 단위
- 네트워크 주소 - 목적지 주소
- 다음 게이트웨이 - 패킷을 전송할 다음 주소
- 인터페이스 - 다음 게이트웨이가 존재하는 인터페이스
- 라우팅 알고리즘
- 글로벌 라우팅
- 네트워크 전체에 대한 완전한 정보를 가지고 출발지와 목적지 사이의 최소 비용 경로를 계산.
- 모든 라우터가 연결 상태와 링크 비용을 알고있다.
- Link State 알고리즘이 여기에 속한다.
- 주로 다익스트라 알고리즘을 사용한다.
- 분산 라우팅
- 최소 비용 경로의 계산이 라우터들에 의해 반복적이고 분산된 방식으로 수행된다.
- 각 라우터가 자신에게 연결된 인접 노드에 대한 링크 비용 정보를 알고있다.
- Distance Vector 알고리즘이 여기에 속한다.
- 주로 벨만-포드 알고리즘을 사용한다.
- 정적 라우팅
- 관리자가 네트워크에 대한 경로 정보를 직접 지정하여 라우팅한다.
- 관리자에 의한 라우팅 정보만을 참조하여 라우터 자체의 부담이 적다.
- 동적 라우팅 보다 빠르고 안정적이다.
- 네트워크 변화가 빈번하거나 등록할 네트워크가 많을 경우 경로 설정을 변경하기 어렵다.
- 동적 라우팅
- 대규모 네트워크에 사용하며 라우터간의 변경된 네트워크에 대한 정보를 자동으로 교환하여 라우팅한다.
- Routing table을 자동으로 작성하여 관리자의 초기 설정만 필요하다.
- 단점으로는 정적 라우팅보다 메모리를 많이 사용한다.
- 디폴트 라우팅
- 경로를 찾지 못한 모든 네트워크들의 경로를 미리 설정해두는 것.
- 인터넷을 사용하는 라우터나 경로가 하나일 때 주로 사용
- 글로벌 라우팅
- 라우팅의 구성요소 - 패킷, 네트워크 주소, 메트릭, 다음 게이트웨이, 인터페이스
- 네트워크 계층의 특징은? - 여러개의 노드를 거칠 때 마다 경로를 찾아주는 역할을 함
- 전송 계층
- 전송 계층의 특징은? - port번호, 전송방식 결정(TCP/UDP), TCP/UDP 헤더 추가, 데이터의 도착여부 파악, 세션을 맺고 있는 두 사용자 사이의 신뢰성 있는 데이터 전송을 위한 종단간 전송을 담당
- 사용되는 장비 - 스위치
- 스위치 - 네트워크 단위들을 연결하는 통신장비로써 허브보다 전송속도가 개선된 것을 말한다
- 계층 별 사용 가능한 스위치가 다름(L2, L3, L4, L7)
- 스위치 - 네트워크 단위들을 연결하는 통신장비로써 허브보다 전송속도가 개선된 것을 말한다
- 전송되는 단위 - 세그먼트, 데이터그램
- 세그먼트 - TCP 헤더 + 데이터
- 데이터그램 - UDP 헤더 + 데이터
- TCP - 연결형 통신
- 3-way handshaking 과정을 통해 연결을 설정하고 4-way handshaking을 통해 해제
- 흐름 제어 및 혼잡 제어
- 높은 신뢰성 보장
- UDP보다 속도가 느림
- 전이중, 점대점 방식
- UDP - 비연결형 통신
- 정보를 주고 받을 때 정보를 보내거나 받는다는 신호절차를 거치지 않는다
- UDP 헤더의 체크섬 필드를 통해 최소한의 오류만 검출한다
- 신뢰성이 낮다
- TCP보다 속도가 빠르다
- 신뢰적 전송 - 동일 또는 타 기종 시스템간에 어떤 망이 연결되었던 관계없이 정보를 틀림없이 상대 단말기에 전달
- 논리회선 및 다중화 / 역 다중화 지원 - 동시에 여러개의 논리적 연결을 가능하게 하는 다중화를 시킨다
- 투명한 전송 - 경로 선택이나 중계기능에 관여하지 않고 양단간 데이터의 투명한 양방향 전송 기능을 제공
- 사용되는 장비 - 스위치
- 전송 계층의 특징은? - port번호, 전송방식 결정(TCP/UDP), TCP/UDP 헤더 추가, 데이터의 도착여부 파악, 세션을 맺고 있는 두 사용자 사이의 신뢰성 있는 데이터 전송을 위한 종단간 전송을 담당
- 세션 계층
- 세션 계층의 특징은? - 어플리케이션 간의 논리적 연결인 세션의 생성, 관리, 종료를 담당하는 계층.
대화 제어를 담당- 애플리케이션 사이의 세션을 열고 닫고 관리
- 체크포인트를 통해 동기화 작업을 진행
- 애플리케이션에 대한 단일 또는 다중 연결 제어
- 세션 계층의 특징은? - 어플리케이션 간의 논리적 연결인 세션의 생성, 관리, 종료를 담당하는 계층.
- 표현 계층
- 표현 계층의 특징 - 송수신자가 공통으로 이해할 수 있도록 데이터 표현 방식을 변경(인코딩, 디코딩, 암호화, 복호화 등)하는 기능을 담당하는 계층
- 인코딩 - 사용자가 입력한 문자나 기호들을 컴퓨터가 이용할 수 있는 신호로 만드는것
- 디코딩 - 코드를 일반 텍스트 혹은 후속 프로세스에 유용한 형식으로 변환하는 프로세스
- 암호화 - 전송데이터의 도청 혹은 변조를 막기 위한 방법 key와 알고리즘을 결합하여 메시지를 암호화 한다(평문을 암호문으로 만듬)
- 암호화 방식 - 대칭키 방식, 비대칭키 방식
- 대칭키 방식 - 암호를 시키는 키와 푸는 키가 같음
- 블록 암호화
- DES
- AES
- SEED
- HIGHT
- ARIA
- 스트림 암호화
- RC4
- 블록 암호화
- 비대칭키 방식 - 암호를 시키는 키와 푸는 키가 다름
- RSA
- ECC
- 대칭키 방식 - 암호를 시키는 키와 푸는 키가 같음
- 암호화 방식 - 대칭키 방식, 비대칭키 방식
- 복호화 - 암호문을 평문으로 복원하는 과정
- 표현 계층의 특징 - 송수신자가 공통으로 이해할 수 있도록 데이터 표현 방식을 변경(인코딩, 디코딩, 암호화, 복호화 등)하는 기능을 담당하는 계층
- 응용 계층
- 응용 계층의 특징 - 사용자가 네트워크에 접근할 수 있도록 인터페이스를 담당하는 계층
- 여러 프로토콜 존재 - HTTP, FTP, SMTP, POP3, IMAP, Telnet
- HTTP
- FTP
- SMTP
- POP3
- IMAP
- Telnet
- 물리 계층
반응형
'CS 지식 > 네트워크' 카테고리의 다른 글
[네트워크] TCP / UDP 포트번호 (0) | 2023.03.02 |
---|---|
[네트워크] OSI 5계층 프로토콜 정리 (0) | 2023.03.02 |
[네트워크] TCP / UDP 정리 (0) | 2023.02.22 |
[네트워크] 데이터 링크 계층 에러 검출 및 수정 방법 (0) | 2023.02.06 |
[네트워크] 네트워크 면접용 지식 정리 (0) | 2023.02.06 |