본문 바로가기

정보처리기사 (필기)/4. 프로그래밍 언어 활용

[정보처리기사] 4-7. 인터넷 / 네트워크 / 프로토콜 / TCP/IP

1. 인터넷

  • TCP/IP 프로토콜을 기반으로 하여 전 세계 수많은 컴퓨터와 네트워크들이 연결된 광범위한 컴퓨터 통신망
  • 인터넷은 군사목적으로 시작됨
  • 인터넷은 유닉스 운영체제를 기반으로 함
  • 인터넷에 연결된 모든 컴퓨터는 고유한 IP주소를 갖음
  • 컴퓨터 또는 네트워크를 서로 연결하기 위해서는 브리지, 라우터, 게이트웨이가 사용됨
  • 백본(Backbone) : 다른 네트워크 또는 같은 네트워크를 연결하여 중추적 역할을 하는 네트워크로, 보통 인터넷의 주가 되는 기간망 
  • 구조적 방법론의 절차 : 타당성 검토 단계 → 계획 단계 → 요구사항 분석 단계 → 설계 단계 → 구현 단계 → 시험 단계 → 운용/유지보수 단계

1-1. IP 주소

  • 인터넷에 연결된 모든 컴퓨터 자원을 구분하기 위한 고유한 주소
  • 숫자로 8비트씩 4부분, 총 32비트로 구성

1-2. 서브네팅

  • 할당된 네트워크 주소를 다시 여러 개의 작은 네트워크로 나누어 사용하는 것
  • 4바이트 IP 주소 중 네트워크 주소와 호스트 주소를 구분하기 위한 비트 = 서브넷 마스크

1-3. IPv6

  • IPv4의 주소 부족 문제를 해결하기 위해 개발
  • 128비트 사용, 전송 속도 빠름
  • 보안 문제 해결
  • IPv4와 호환성 뛰어남
  • Traffic Class, Flow Label을 이용해 등급별, 서비스별로 패킷을 구분할 수 있어 품질 보장이 용이
    • Traffic Class : IPv6 패킷의 클래스나 우선순위를 나타내는 필드
    • Flow Label : 네트워크 상에서 패킷들의 흐름에 대한 특성을 나타내는 필드

1-3-1. IPv6의 구성

  • 16비트씩 8부분, 총 128비트로 구성
  • 각 부분을 16진수로 표현하고, 콜론(:)으로 구분
  • 유니캐스트, 멀티캐스트, 애니캐스트
  • 유멀애

2. OSI 참조모델

  • 응용계층 (메세지) : 사용자가 OSI 환경에 접근 가능하도록 서비스 제공
  • 표현계층 (메세지) : 코드변환, 테이터 암호화, 압축, 구문 검색
  • 세션계층 (메세지) : 대화 제어 담당, 관련성 유지
  • 전송계층 (세그먼트) : 종단 시스템 간에 투명한 데이터 전송 가능, TCP, UDP 등 / 라우터
  • 네트워크계층 (패킷) : 경로설정, X.25, IP / 라우터
  • 데이터링크 계층 (프레임) : 흐름제어, 프레임 동기화, 오류제어, 순서제어 / 브리지, 스위치, 랜카드
  • 물리계층 (비트) : 기계적, 전기적, 기능적, 절차적 특성에 대한 규칙 정의 / 리피터, 허브

2-1. 네트워크 관련 장비

  • 허브 : 가까운 거리의 컴퓨터 연결하는 장치, 신호 증폭하는 라피터 역할
  • 라피터(Repetor) : 전송되는 신호를 원래 신호 형태로 재생하여 다시 전송하는 역할 수행
  • 브리지 : LAN 과 LAN을 연결하거나 LAN 안에서의 컴퓨터 그룹을 연결하는 기능 / MAC에서 사용
  • 스위치 : 더 큰 LAN 만드는 장치
  • 라우터 : LAN과 LAN을 연결 + 최적의 장소
  • 게이트웨이 : 전 계층의 프로토콜 구조가 다른 네트워크의 연결 수행

3. 프로토콜 기본 요소

  • 구문(Syntax) : 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨 등 규정
  • 의미(Semantics) : 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정
  • 시간(Timing) : 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정

3-1. 프로토콜 기능

  • 단편화와 재결합
  • 캡슐화
  • 흐름 제어
  • 요류 제어
  • 동기화
  • 순서 제어
  • 주소 지정
  • 다중화
  • 경로 제어
  • 전송 서비스

4. TCP/IP

OSI TCP/IP  기능 
응용 계층
표현 계층
세션 계층 
응용 계층  - 응용 프로그램 간의 데이터 송수신 제공 
- TELNET, FTP, SMTP, SNMP, DNS 등
전송 계층 전송 계층  - 호스트들 간의 신뢰성 있는 통신 제공
- TCP, UDP 
네트워크 계층 인터넷 계층  - 데이터 전송을 위한 주소 지정, 경로 설정 제공
- IP, ICMP, IGMP, ARP, RARP 
데이터 링크 계층 
물리 계층
네트워크 액세스 계층  - 실제 데이터를 송수신하는 역할
- Ethernet, IEEE 802, HDLC, X.25, RS-232C, ARQ 등 

4-1. 응용 계층의 주요 프로토콜

FTP(File Transfer Protocol) 컴퓨터와 컴퓨터, 컴퓨터와 인터넷 사이에서 파일을 주고받을 수 있도록 하는 원격 파일 전송 프로토콜 
SMTP(Simple Mail Transfer Protocol)  전자 우편을 교환하는 서비스 
TELNET  - 멀리 떨어져 있는 컴퓨터에 접속해 내 컴퓨터처럼 사용할 수 있도록 해주는 서비스
- 프로그램 실행하는 등 시스템 관리 작업을 할 수 있는 가상의 터미널기능 수행
SNMP(Simple Network Management Protocol) TCP/IP 네트워크 관리 프로토콜, 라우터나 허브 등 네트워크 기기의 네트워크 정보를 네트워크 관리 시스템에 보내는 데 사용되는 표준 통신 규약 
DNS(Domain Name Sysetem) 도메인 네임을 IP주소로 매핑하는 시스템 
HTTP(Hyepr Text Transfer Protocol) 월드 와이드 웹에서  HTML 문서를 송수신 하기 위한 표준 프로토콜 

4-3. 전송 계층의 주요 프로토콜

TCP(Transmission Control Protocol) - 양방향 연결형 서비스 제공, 가상회선 방식, 고정경로O
- 가상 회선 연결 형태의 서비스 제공
- 스트림 위주의 전달(패킷 단위)을 함
- 신뢰성있는 경로 활립 메세지 전송 감독
UDP(User Datagram Protocol) - 비연결형 서비스 제공, 데이터그램 방식, 고정경로X
- 오버헤드 적음
- 실시간 전송 유리
- 신뢰성보다는 속도
RTCP(Real-Time Control Protocol) RTP 패킷의 전송 품질을 제어하기 위한 제어 프로토콜

4-4. 인터넷 계층의 주요 프로토콜

IP - 전송할 데이터에 주소 지정, 경로 설정
- 비연결형 데이터그램 방식 사용, 신뢰성 보장X
ICMP(Internet Control Message Protocol) IP와 조합하여 통신중에 발생하는 오류의 처리와 전송 경로 변경 등을 위한 제어 메시지를 관리하는 역할
IGMP(Internet Group Message Protocol) 멀티캐스트를 지원하는 호스트나 라우터 사이에서 멀티캐스트 그룹 유지 위해 사용
ARP(Address Resolution Protocol) 호스트의  IP주소를 호스트와 연결된 네트워크 접속 장치의 물리적 주소로 바꿈
PARP(Reverse Address Resolution Protocol) ARP와 반대로 물리적 주소를 IP 주소로 변환하는 기능

4-5. 네트워크 액세스 계층의 주요 프로토콜

ETHERNET(IEEE 802.3) CSMA/CD 방식의 LAN
IEEE 802 LAN을 위한 표준 프로토콜
HDLC 비트 위주의 데이터 링크 제어 프로토콜
X.25 패킷 교환망을 통한 DTE와 DCE 간의 인터페이스 제공하는 프로토콜
RS-232C 공중 전화 교환망(RSTN)을 통한 DTE와 DCE간의 인터페이스 제공하는 프로토콜