네트워크란 무엇일까?
컴퓨터 네트워크 또는 컴퓨터망은 노드들이 자원을 공유할 수 있게 하는 디지털 전기통신망의 하나이다. 즉, 분산되어 있는 컴퓨터를 통신망으로 연결한 것을 말한다. 컴퓨터 네트워크에서 컴퓨팅 장치들은 노드 간 연결을 사용하여 서로에게 데이터를 교환한다.
사실 네트워크의 기본적인 개념들은 나의 이전 글
https://velog.io/@goban/%EC%9D%B8%ED%84%B0%EB%84%B7
여기에서 다룬적이 있다. 여기서는 프로토콜, TCP/IP를 간단하게 설명했는데, 이번엔 다른 기본적인 네트워크의 개념들에 대해서 알아보겠다.
OSI 7 계층은 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 말한다.
애플리케이션 계층: 엔드유저 사용자와 컴퓨터가 통신하는 곳(일반 응용 서비스)
프리젠테이션 계층: 한 시스템의 애플리케이션에서 보낸 정보를 다른 시스템의 애플리케이션 계층에서 읽을 수 있게 하는 곳 (MIME, 암호화)
세션 계층: 애플리케이션간 세션 구축, 관리, 종료시키는 역할 (TCP/IP 세션)
트랜스포트 계층: 데이터 전송 서비스 제공 (신뢰적 전송)
애플리케이션 계층에서 전달한 데이터를 목적지 프로세스까지 전달하는 역할을 하는 프로토콜
네트워크 계층: 두 원격 시스템간 연결성과 경로 선택 제공(라우팅 프로토콜)
데이터 링크 계층: 네트워크 계층으로부터의 메시지를 비트로 변환(맥 레이어)
물리 계층: 데이터 패킷을 전기 신호나 광신호로 바꾸어 송수신(물리, 전기적 신호로 변환)
1) 네트워크(최초의 인터넷에서 사용한 프로토콜 / 네트워크의 역사)
ARPANET(1969) + NSFNET(1986) -> 인터넷 (1990~)
소규모 메일, FTP, 뉴스그룹 -> WWW (1991)
2) IP(Internet Protocol)
네트워크 계층에서 데이터의 효율적 전송
호스트에 대한 주소체계와 패킷 라우팅 담당
IP 주소: 32비트 정보 (일부는 네트워크, 일부는 호스트) : 목적지 정보를 보는 용도
3) ICMP (Internet Control Message Protocol)
IP에 내장된 오류처리, 보고 메커니즘을 추가한 프로토콜
IP에 이상한 정보가 발생했을때, 상황 모니터링 프로토콜
4) TCP (Transmission Control Protocol)
트랜스포트 계층의 신뢰적 전송을 위한 프로토콜
연결지향 프로토콜 (전화와 유사)
데이터 송수신 전에 소켓을 통한 연결 필요
소켓/포트로 동시에 여러개의 연결을 지원
네트워크 상황에 따라 패킷전송속도 조절도 가능한 유연성을 지님
모든 데이터가 안전하게 주고받아야하는 애플리케이션에서 사용
5) UDP (User Datagram Protocol)
트랜스포트 계층의 신뢰성없는 전송 프로토콜
비연결지향 프로토콜 (편지 배달과 유사)
음악, 동영상 스트리밍, 멀티미디어 데이터 전송 등에 적합
TCP보다는 유연성이 떨어지는 프로토콜이지만, 가볍다
1) Telnet
2) FTP (File Transfer Protocol)
3) POP3 (Post Office Protocol Version 3)
4) IMAP (Internet Message Access Protocol)
로컬컴퓨터에서 이메일에 접근하기 위한 프로토콜 (포트 143): 받을때
POP3와 차이 : 제목/송신자만 보고 실제 메일을 로컬로 내려받을지 결정, 서버에 폴더 및 메시지 관리
5) SMTP (Simple Mail Transfer Protocol)
6) HTTP (HyperText Transfer Protocol)
WWW 환경에서 유용한 문서 전송 프로토콜 (포트 80)
Stateless 프로토콜: 클라이언트가 서버로 접속하여 정보요청하면, 서버는 적절한 응답후 접속 종료.
참조: