정보처리기사 필기 준비하며 정리한 내용입니다.
📌OSI 7계층 ⭐
- 응용 계층
- 데이터 최종 목적지
- 응용~세션까지 데이터를 갖고 있으며, TCP/IP 4계층 구조에서 이 셋은 응용 계층
- 프로토콜
- ⭐ HTTP : 서버-클라 하이퍼텍스트 문서 송수신 프로토콜. 80포트
- FTP, SMTP, POP3, IMAP, Telnet, DNS, RIP, DHCP, SNMP 등
- 프로토콜
- 표현 계층
- 암호화
- 응용 프로세스 독립성 제공
- MIME 인코딩
- 세션 계층
- 양 끝단의 응용 프로세스가 통신 관리하기 위한 방법
- 서버와의 연결 설정
- 양 끝단의 응용 프로세스가 통신 관리하기 위한 방법
- 트랜스포트 = 전송 계층
- 양 종단 End to end 간의 사용자가 신뢰성 있는 데이터 주고받게
- 시퀀스 넘버 기반 오류제어
- 패킷 전송 유효 확인. 전송 실패하면 재전송
- 오류 검출, 복구, 흐름제어, 중복검사 수행
- TCP 헤더 + 데이터 : 세그먼트
- 프로토콜(전송계층)
- TCP
- transmission control protocol
- 클라-서버 연결
- 전송 순서 보장
- 연결 설정 3 way handshaking
- 연결 해제 4 way handshaking
- 느리다
- 헤더에 응답번호가 있다
- UDP
- user datagram protocol
- 비연결
- 일방적으로 데이터 발신
- 빠른 전송. 신뢰성 떨어짐
- 패킷 유실 시 재전송 하지 않는다
- 스카이프 등에서는 괜찮음
- TCP
- 네트워크 계층
- 라우터, L3스위치
- 라우터 : 패킷 위치 추출, 최적 경로 지정. 안전 전달!
- 라우팅 : 빠르고 안전하게 전달
- 전달만 한다!
- 패킷에서 주소 확인
- 경로를 찾아주는 역할
- IP 주소부여, 경로설정 Route
- IP 헤더 + TCP 헤더 + 데이터 : 패킷
- 프로토콜(인터넷 계층)
- IP : 패킷 상호 연결을 위한 비연결성 프로토콜
- ICMP : 인터넷 제어 메시지 프로토콜. 네트워크 진단
- IGMP : 그룹
- ARP : IP 주소 → MAC 주소(물리) 변환
- RARP : MAC 주소 → IP 주소
- 라우터, L3스위치
- 데이터 링크 계층
- 스위치 허브, 브릿지
- 스위치 허브 : 스위치 기능
- 브릿지 : 근거리 통신망 연결
- point to point. 신뢰성 있는 전송
- CRC 기반의 오류제어와 흐름 제어 필요
- 오츄 검출 수정에 필요한 수단 제공
- MAC 주소 = 물리 주소
- MAC주소 ㅡIP 헤더 + TCP 헤더 + 데이터 : 프레임
- 프로토콜(네트워크 액세스 계층=데이터링크&물리계층)
- Ethernet : IEEE 표준
- X.25 : 패킷 전달 프로토콜, 안정성, 보안성
- RS-232C
- 스위치 허브, 브릿지
- 물리 계층
- NIC 카드 (LAN 카드), 리피터, 더미 허브
- NIC 카드 (LAN 카드) : MAC 어드레스가 들어간다, 물리적 주소, 고유
- 리피터 : 증폭기
- 더미 허브 : 한곳으로 모아주는 집중화 장비
- 전송만 한다
- 비트
- NIC 카드 (LAN 카드), 리피터, 더미 허브
TCP/IP 헤더
🔻IP
- 호스트 간 통신만을 담당
- 비신뢰성, 비 연결성 / 흐름제어와 오류 복구 기능 없다
- 있는 건 TCP
- IP의 헤더
- 길이 20~60Byte ⭐
- 식별자
- 플래그 : 단편화됐는지 나타냄
- 단편 오프셋 : 순서
- 수명 : 라우터를 몇번 거쳐서까지 살아남을 것인지
- 체크섬 : 오류 검출 정보
- 발신지 주소 : 패킷 보낸 노드 IP 주소⭐
- 목적지 주소 : 도착해야하는 IP 주소⭐
🔻TCP
- 양 종단 간 / 연결형 / 전송 계층 프로토콜
- IP가 데이터의 배달을 처리한다면 / TCP는 패킷을 추적 및 관리
- TCP 헤더
- 송-수신지 포트
- 순서번호
- 체크섬
- TCP Flags ⭐
- U urgent 긴급. 우선순위 높음
- A ack 승인
- P push 밀어넣기 비트
- R reset 초기화 비트
- S syn 동기화 비트
- F fin 종료 비트
📌IP
IPv4
- 8비트씩 4부분. 32비트. 한 부분을 옥텟이라고 칭한다.
- 10진수로 표시한다
- 보안은 IPSec 프로토콜 별도 설치
- 주소 비 순차적 할당
- 플러그 애플레이 비지원
- A~E의 5개 클래스. D, E는 실험용 연구용이라 우리는 사용 불가.
- A 0~ (0비트) 국가 대형 통신망
- B 128~ (10비트) 중대형 통신망
- C 192~ (110비트) 소규모 통신망 256개 호스트
- D 224~ (1110비트)
- E 240~
- 주소 분류 ⭐
- 유니캐스트 1:1
- 멀티 캐스트 1:다
- 브로드 캐스트 to 모든 장비들
IPv6
- 기존 32비트의 IPv4를 128비트⭐로 확장
- 16진수⭐로 표시한다
- 보안 기본 탑재
- 주소 순차적 할당
- 플러그앤 플레이 지원
- 기본 헤더 40바이트
- 주소분류 ⭐
- 유니 캐스트 1:1
- 멀티 캐스트 1:다
- 애니 캐스트 to 가장 가까운 수신자
IPv4 - IPv6 전환기술 ⭐
- 듀얼스택 : 동시 지원
- 터널링 : 6을 4 안에 캡슐화
- 헤더 변환 = 주소 변환
📌서브넷
IP주소에서 네트워크 아이디와 호스트 아이디를 구분하기 위해 사용
- 서브네팅
- 네트워크 영역과 호스트 영역 쪼개는 작업
- 서브넷 마스크
- IP 주소의 네트워크 아이디 호스트 아이디 구분 위함
- 예를 들어 200.1.1.0/24 를 7개의 서브넷으로 나눈다는 말은
- 7개의 서브넷으로 나누니까 총 8개의 구역으로 나뉘게 됨
- /24니까 3옥텟을 네트워크 영역으로 쓰겠다는 뜻
- 예를 들어 200.1.1.65/27의 서브넷 마스크는
- 호스트 주소 중 3비트를 네트워크 아이디로 사용하여
- → 1110000
- 즉, 255.255.255.224 가 서브넷 마스크가 된다.
- 호스트 주소 중 3비트를 네트워크 아이디로 사용하여
NAT Network Address Translation
- 제한된 수의 IPv4 주소 문제 해결 위함
- 주소 할당 방식에 따른 종류
- 정적 Static NAT
- 공인 IP 사설 IP주소 1:1 매칭
- 동적 Dynamic NAT
- 공인 IP주소 < 사설 IP 주소 개수
- 포트 PAT (Port Address Translation)
- 공인 IP 주소 1개에 ← 사설 IP 주소 여러 개 매칭. 포트 포워딩.
- 정적 Static NAT
DNS Domain Name System
도메인 네임 ↔ IP 주소
📌프로토콜
통신 규약
통신 프로토콜의 기본 요소
- 구문 syntax
- 의미 semantics
- 타이밍 timing
프로토콜의 기능
- 단편화와 재결합
- 캡슐화 : 정확한 전송 위함
- 혼잡 제어
- 동기화
- 순서 제어
- 주소 지정
- 다중화
- 경로 제어
- 📌흐름 제어
- 전송 데이터 전송량이나 속도 조절하는 기능
- 송-수신 측 간 데이터 처리 속도 차이 해결
- 흐름 제어 방식
- Stop and Wait
- 패킷 보내고 stop → ACK 받고→ 그 다음 패킷 전송
- 너무 느려서 거의 사용되지 않는다
- Sliding Window
- 수신 측에서 설정한 윈도우 크기만큼 세그먼트 전송
- 동적 조절
- 전송된 데이터에 대한 ACK 프레임 수신 후 ACK된 프레임 만큼 윈도우를 이동하는 방식
- 수신 측에서 설정한 윈도우 크기만큼 세그먼트 전송
- 피기배킹 piggibacking
- 양방향으로 동시에 정보 프레임과 응답 프레임 교차 전송
- 별도의 ACK 없다
- 데이터 전문을 이용하여 응답
- 정보 프레임 + 응답 기능 동시에
- 전송 효율 상승
- 양방향으로 동시에 정보 프레임과 응답 프레임 교차 전송
- Stop and Wait
- 전송 데이터 전송량이나 속도 조절하는 기능
- 📌오류 제어
- 전송 중에 발생하는 오류를 검출하고 정정
- TCP는 기본적으로 ARQ(Automatic Repeat Request), 재전송 기반 오류 제어를 사용
- 오류 제어 방식
- Stop and wait ARQ
- ACK 올 때까지 대기
- Go Back N ARQ
- 오류가 난 지점부터 모두 재전송
- Selective Repeat ARQ
- 오류난 부분만 재전송
- 별도의 데이터 재정렬, 별도의 버퍼 필요
- Adaptive ARQ
- 전송 효율 최대. 프레임 길이 동적. 비용 고가
- Stop and wait ARQ
- 오류 발생 원인
- 감쇠
- 지연왜곡
- 상호 변조 잡음
- 충격 잡음
- 전송 오류 제어 방식
- 전진 오류 수정 Forward Error Correction FEC
- 재전송 요구 없이 수신측에서 스스로 오류 검출 및 수정
- 통보하지 않는다
- 오류의 검출과 수정
- 해밍코드 : 자기 정정 부호. 1비트만
- 상승코드 : 순차적 디코딩 한계값 디코딩. 여러 비트
- 재전송 요구 없이 수신측에서 스스로 오류 검출 및 수정
- 후진 오류 수정 Backward Error Correction BEC
- 재전송 요구
- 자체 수정 없음. 검출만 한다.
- 오류 제어는 ARQ가
- 자체 수정 없음. 검출만 한다.
- 오류 검출만
- 패리티 검사 : 데이터 블록 끝에 검사 비트인 ‘패리티 비트’ 추가.
- **CRC 순환 중복 검사 (**Cyclic Redundancy Check) : 확장 데이터(오류 발생했는지 확인하는 코드. Frame Check Sequence) 덧붙여 보냄
- 블록 합 방식
- 체크섬 : in 헤더. 간단.
- 재전송 요구
- 전진 오류 수정 Forward Error Correction FEC
- 전송 중에 발생하는 오류를 검출하고 정정
📌라우팅 프로토콜 ⭐
- 경로 고정 여부에 따른 구분
- 정적 : 관리자가 경로 직접 지정
- 동적 : 라우터 스스로 라우팅 경로 설정
- 내부 라우팅 IGP : Autonomous System(자치시스템) 내에서의 라우팅 담당하는 라우팅 프로토콜
- 벨만-포드 거리 벡터 알고리즘 : 인접 라우터가 테이블 공유.
- RIP ⭐
- Routing Information Protocol
- 최대 15홉
- 이웃 라우터와 공유
- 홉수만 고려
- RIP ⭐
- 다익스트라 링크 상태 알고리즘 : 모든 라우터가 테이블 공유. ****
- OSPF ⭐
- Open Shortest Path First
- 홉수 대역폭 지연시간 등을 고려한 최적 경로 선택
- OSPF ⭐
- 벨만-포드 거리 벡터 알고리즘 : 인접 라우터가 테이블 공유.
- 외부 라우팅 EGP
- BGP
- 내부 라우팅 IGP : Autonomous System(자치시스템) 내에서의 라우팅 담당하는 라우팅 프로토콜