네트워크 : 두 대 이상의 컴퓨터가 연결된 것
인터넷 : 전 세계를 아우르는 거대한 네트워크. 이를 통해 해외 웹 사이트도 볼 수 있는 것
네트워크 or 인터넷에서 데이터를 주고 받으려면 규칙이 필요하고 이 규칙엔 packet을 사용. 패킷은 컴퓨터 간에 데이터를 주고받을 때 네트워크를 통해 전송되는 데이터의 작은 조각을 말함. 큰 데이터가 있더라도 작게 나누어 보내는 게 원칙.
※ 큰 데이터를 나눠서 보내는 이유? : 그대로 보내면 그 데이터가 네트워크의 대역폭을 너무 많이 차지해 다른 패킷의 흐름을 막을 수도 있어서. 즉 도로의 너비에 비해 차가 너무 뚱뚱하면 막힌다는 것
따라서 목적지에서는 받은 패킷들을 다시 조립해 원래 데이터를 만드는 작업이 수반됨. 다만 순서대로 패킷이 도착하지도 않고 몇 개는 누락되기도 함. 때문에 송신 측에서 패킷에 순서대로 번호를 붙여 보내고, 수신 측에서는 번호 순대로 패킷들을 정렬해 조립함.
랜과 왠의 차이
랜 : 건물 안이나 특정 지역을 범위로 하는 네트워크
왠 : 지리적으로 넓은 범위에 구축된 네트워크. ISP(인터넷 서비스 제공자. KT, LG U plus 등)가 제공하는 서비스를 사용해 구축된 네트워크를 말한다. 랜과 랜을 왠을 통해 연결한다고 생각할 수 있다.
가정과 회사에서 구축하는 랜 구성은 다르다. 가정은 뭐 알다시피 공유기를 통해 컴퓨터 핸드폰 등을 연결한 뒤 공유기가 ISP와 연결되는 구조인 반면, 회사는 방금 설명한 것에 더불어 웹 서버 / 메일 서버 / DNS서버와 같은 다양한 서버를 아우르는 DMZ 네트워크 영역(외부에 공개하기 위한 네트워크)들로 구성된다. DMZ는 가정에서의 랜 구조와 ISP 중간에 위치하는 네트워크라 보면 된다.
네트워크에서도 문제없이 통신하려면 규칙이 필요하다. 이 규칙을 프로토콜이라고 한다. 데이터를 이런 형태로 가공하고, 데이터를 이렇게 보내고, 받는 곳에선 어떻게 하고 뭐 이런 규칙들을 하나하나 만들었고 이들을 아울러 프로토콜이라 하는 것.
OSI모델?
네트워크 기술의 기본이 되는 모델(표준)이다. 데이터의 송수신은 곧 컴퓨터로 데이터를 주고받는 것을 말하는데, 이 때 컴퓨터 내부에선 다음과 같이 일곱 개 계층으로 나누어 작업을 해야 한다는 모델이 OSI모델이다.
응용계층
표현계층
세션계층
전송계층
네트워크계층
데이터링크계층
물리계층
통신할 때 데이터는 맨 위 응용 계층부터 맨 아래 물리계층까지 순차적으로 전달된다. 각 계층의 역할은 다음과 같다.
응용계층 : 이메일 & 파일 전송, 웹 사이트 조회 등 애플리케이션에 대한 서비스 제공
표현 계층 : 문자 코드, 압축, 암호화 등의 데이터를 변환
세션계층 : 세션체결, 통신 방식을 결정
전송계층 : 신뢰할 수 있는 통신을 구현
네트워크계층 : 다른 네트워크와 통신하기 위한 경로 설정 및 논리 주소를 결정
데이터 링크 계층 : 네트워크 기기 간의 데이터 전송 및 물리 주소 결정
물리 계층 : 시스템 간의 물리적인 연결과 전기 신호를 변환 및 제어
참고 : 일반적으로 표현 / 세션 계층은 응용 계층에 포함하여 생각할 수 있음
송신 측에서는 상위계층 ~ 하위계층으로 데이터를 전달하고, 수신 계층에선 하위 계층 ~ 상위계층으로 데이터를 받는다. 각 계층은 독립적이어서 데이터가 전달되는 동안 다른 계층의 영향을 받지 않는다.
TCP/IP모델?
OSI의 7계층을 4계층으로 표현한 모델.
응용계층(응용 + 표현 + 세션)
전송계층
인터넷 계층(네트워크 계층)
네트워크 접속 계층(데이터링크 + 물리)
각각 계층엔 다양한 프로토콜(통신 규칙)이 있다. 데이터를 주고받는 것에 있어 어떤 계층들을 거치게 하기로 정해뒀고, 각 계층에서 정해진 규칙들을 따르도록 만들었다고 생각하면 됨.
데이터를 보낼 때, 상위계층 ~ 하위계층으로 데이터를 보낸다고 했다. 각 계층에서 데이터의 앞 부분에 필요한 정보를 붙여서 다음 계층으로 보내는데, 이때 붙이는 정보들을 헤더라고 한다. 헤더에는 데이터를 전달받을 상태에 대한 정보도 포함되어 있다. 이렇게 헤더를 붙여 나가는 것을 캡슐화라고 한다. 반대의 작업은 역캡슐화.
한 번 더 설명하자면, 응용계층에서 데이터에 헤더를 붙여 만든 덩어리를 전송계층으로 보내고, 전송에서도 헤더를 붙여 만든 더 커진 덩어리를 네트워크 계층으로 보내고..결국 마지막엔 물리 계층에선 이 커다란 덩어리를 전기신호로 수신측으로 보내는 것임. (데이터 링크 계층에선 헤더말고도 꼬리쪽에 트레일러를 따로 붙임)
'CS > 컴퓨터네트워크' 카테고리의 다른 글
[컴퓨터 네트워크] 전송계층(transport layer) - TCP & UDP 간단하게 쓰다듬기 (0) | 2022.04.19 |
---|---|
[컴퓨터네트워크] 네트워크 계층 손으로 쓱 터치하기 (0) | 2022.04.19 |
[컴퓨터네트워크] 물리계층/데이터링크계층 간단하게(feat.MAC주소), 스위치 등에 관한 개념 (0) | 2022.04.19 |
[컴퓨터 네트워크] 인터넷의 구조 (0) | 2022.03.10 |
[컴퓨터 네트워크] 인터넷과 프로토콜의 개념, 그리고 네트워크의 구조 (0) | 2022.03.03 |