본문 바로가기

네트워크

(14)
모두의 네트워크 - 응용 계층 (1) 응용 계층의 역할과 웹 서버의 구조 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 응용 계층은 애플리케이션(네이버, 구글, 카카오톡 등)이 동작하는 계층을 의미합니다. 여기서 정리하는 응용 계층은 5계층인 세션 계층과 6계층인 표현 계층을 모두 포함합니다. 목차 1. 응용 계층의 역할과 웹 서버의 구조 2. DNS 응용 계층의 역할과 웹 서버의 구조 응용 계층에서는 클라이언트의 요청을 전달하기 위해 서버가 이해할 수 있는 데이터로 변환하고 전송 계층으로 전달하는 역할을 합니다. 서버와 통신하기 위해서는 응용 계층의 프로토콜을 사용해야 합니다. 대표적으로 HTTP(S), FTP, DNS 등이 있습니다. WWW(World Wide Web)을 줄여 보통 웹이라고도 부릅니다. 웹은 HTML, URL, HTTP라는 세 가지 기술이 사용됩니다...
모두의 네트워크 - 전송 계층 (2) 일련번호와 확인 응답 번호, 포트 번호 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 목차 1. 일련 번호와 확인 응답 번호 2. 포트 번호 연결을 확립하는 3-way 핸드셰이크가 끝나고 실제 데이터를 보내거나 상대방이 받을 때는 TCP 헤더의 일련 번호(sequence number)와 확인 응답 번호(acknowledgement number)를 사용합니다. 일련번호는 송신 측에서 수신 측에 이 데이터가 몇 번째 데이터인지 알려 주는 역할을 합니다. 확인 응답 번호는 수신 측이 몇 번쨰 데이터를 수신했는지 송신 측에 알려주는 역할을 합니다. 그래서 이 번호는 다음 번호의 데이터를 요청하는 데도 사용됩니다. Window size 3-way 헨드셰이크 과정에서 코드 비트와 함께 일련번호/확인 응답 번호가 결정되는데요. 세그먼트(데이터) 하나..
모두의 네트워크 - 전송 계층 (1) 전송 계층의 역할 및 TCP와 3-way 핸드셰이크 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 물리, 데이터 링크, 네트워크 계층만 있으면 목적지에 데이터를 보낼 수 있습니다. 하지만 데이터가 손상되거나 유실되더라도 이 계층에서는 아무것도 해 주지 않습니다. 전송 계층은 목적지에 신뢰할 수 있는 데이터를 전 ㅇ달하기 위해 필요합니다. 목차 1. 전송 계층의 역할 2. TCP 구조 및 3 way handshake 전송 계층의 역할 전송 계층에는 두 가지 기능이 있어요. 첫 째는 오류를 점검하는 기능입니다. 오류가 발생하면 데이터를 재전송호도록 요청해요. 다른 한 가지 역할은 전송된 데이터의 목적지가 어떤 애플리케이션인지 식별합니다. 연결형 통신과 비연결형 통신 전송 계층의 특징을 간단히 설명하면 신뢰성/정확성과 효율성으로 구분할 수 있습니다. 신뢰..
모두의 네트워크 - 네트워크 계층 (3) 서브넷과 라우터 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 목차 1. 서브넷 2. 라우터 서브넷 서브넷은 네트워크를 분할하는데 사용됩니다.모두의 네트워크 - 네트워크 계층 (2) IP에서는 IP 주소는 A, B, C 클래스로 나눌 수 있다고 했습니다. 네트워크 ID가 8비트인 A 클래스의 경우 IP 주소를 약 1700만개 사용할 수 있습니다. 이 많은 수의 컴퓨터가 브로드캐스트(네트워크 내 존재하는 모든 컴퓨터) 패킷을 전송하면 네트워크가 혼잡해질 것입니다. 서브넷팅을 통해 네트워크를 분할하여 브로드캐스트로 전송되는 패킷의 범위를 좁힐 수 있습니다. 그리고 분할된 네트워크를 서브넷이라고 부릅니다. 서브넷팅은 아래와 같이 기존에 사용되던 호스트ID를 빌려 서브넷ID로 만들어 진행합니다. 서브넷 마스크 IP 주소를..
모두의 네트워크 - 네트워크 계층 (2) IP 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 네트워크 간의 통신을 하려면 IP 주소가 필요합니다. IP 주소에 대해 알아봅시다. 목차 1. IP 주소의 구조 2. IP 주소의 클래스 구조 3. 네트워크 주소와 브로드캐스트 주소의 구조 IP 주소 데이터를 다른 네트워크의 목적지로 보내려면 IP 주소가 필요합니다. IP 버전에는 IPv4/IPv6 가 존재합니다. IPv4는 32비트, IPv6는 128비트로 구성되어 있다. IPv4는 32비트기 때문에 약 43억 개의 고유한 주소를 가질 수 있다. 인터넷이 널리 보급되면서 주소가 부족해져서 128비트로 구성된 IPv6가 등장하게 되었습니다. IP 주소에는 공인 IP 주소와 사설 IP 주소가 있습니다. 참고로 공인 IP 주소는 ISP가 제공합니다. 그래서..
모두의 네트워크 - 네트워크 계층 (1) 네트워크 간의 연결 구조 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 전 세계에 수 많은 네트워크가 있고 그 네트워크들은 서로 연결되어 거대한 인터넷을 이루고 있습니다. 이번에는 네트워크 간의 연결에 대해 정리하겠습니다. 목차 1. 네트워크 간의 연결 구조 네트워크 간의 연결 구조 앞서 데이터 링크 계층에서는 이더넷 규칙을 기반으로 데이터를 전송하였습니다. 이 규칙에 따라 같은 네트워크에 있는 컴퓨터로는 데이터를 전송할 수 있지만 인터넷, 다른 네트워크로는 데이터를 전송할 수 없습니다. 네트워크 계층은 하나의 네트워크가 아닌 서로 다른 네트워크를 연결해서 통신할 수 있도록 합니다. 다른 네트워크로 데이터를 전송하려면 라우터라는 네트워크 장비가 필요합니다. 라우터는 목적지가 정해지면 해당 목적지까지 어떤 경로로 가는 것이 ..
모두의 네트워크 - 데이터 링크 계층 (2) 스위치의 구조와 ARP 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 스위치는 허브와 달리 데이터 충돌이 발생하지 않습니다. 네트워크 구성에서 빠질 수 없는 스위치와 출발지에서 MAC 주소를 모를 때 이용하는 프로토콜인 ARP에 대해 알아봅시다. 목차 1. 스위치의 구조 2. ARP(Address Resolution Protocal) 스위치의 구조 스위치는 허브와 비슷하게 생겼지만 기능은 완전히 다릅니다. 스위치 내부에는 MAC 주소 테이블이라는 것이 존재합니다. MAC 주소 테이블은 스위치의 포트 번호와 해당 포트에 연결되어 있는 컴퓨터의 MAC 주소가 등록되는 데이터베이스입니다. OSI 7 기준, 데이터 링크 레이어에서 프레임이 만들어지고 내부에는 목적지 MAC 주소가 존재한다. 스위치의 MAC 주소 테이블에는 해당 ..
모두의 네트워크 - 데이터 링크 계층 (1) 데이터 링크 계층 역할과 이더넷 포스팅은 모두의 네트워크에 기반하여 작성되었습니다. 목차 1. 이더넷이란? 2. MAC 주소의 구조 이더넷이란? 랜에서 데이터를 주고받으려면 데이터 링크 계층의 기술이 필요합니다. 데이터 링크 계층은 네트워크 장비(허브, 스위치, 라우터 등) 간에 신호를 주고받는 규칙을 정하는 계층입니다. 가장 많이 사용하는 규칙이 이더넷입니다. 허브를 사용하는 경우 랜 환경에서 특정한 컴퓨터 한대에 데이터를 보내려고 해도 허브에 연결된 모든 포트에 전기 신호가 전달됩니다. 이런 경우를 위해 데이터의 내용을 못 보게 하는 확실한 규칙이 정해져있다. 이더넷은 이 규칙을 명시하는 것 같다. 데이터에 목적지 정보를 추가(MAC 주소)해서 보내는 목적지 이외의 컴퓨터는 데이터를 받더라도 무시하게 되어 있습니다. 허브는 들어온 ..