CS 42

OSI 7계층 어플리케이션 계층

어플리케이션 계층은 OSI 7계층 모델의 최상위 계층으로, 사용자가 네트워크에 쉽게 액세스 할 수 있도록 한다. 우리가 사용하는 인터넷을 사용하는 모든 어플리케이션이 어플리케이션 계층에 해당한다고 생각할 수 있다. 예를 들어, 이메일을 보내거나, 웹페이지를 검색하거나, 파일을 다운로드 받거나 하는 모든 종류의 것이다.  어플리케이션 계층은 모든 종류의 어플리케이션이나 통신 프로세스에 필요한 기능을 수행한다. 어플리케이션 계층이 제공하는 기능은 다음과 같다.통신을 하는 두 호스트 간의 프로세스를 정의한다.두 호스트 간에 보내거나 받는 메시지의 유형을 정의한다.두 호스트 간에 메시지를 보내는 방법과 예상되는 응답을 정의한다. 어플리케이션 계층은 모든 소프트웨어가 데이터를 쉽게 보내고 받고 사용자에게 데이터를..

CS 2024.12.30

TCP와 UDP

OSI 7계층 모델에서 4계층을 맡고있는 전송 계층의 대표적인 프로토콜인 TCP와 UDP에 대해 알아보자. 1. TCP TCP는 네트워크를 통해 서로 다른 장치 간에 메시지 교환을 돕는 통신을 위한 연결 지향 프로토콜이다. 컴퓨터 간에 데이터 패킷을 전송하는 기술인 인터넷 프로토콜과 함께 작동한다. TCP는 상위 계층에서 받은 데이터를 작은 묶음으로 나누고, 반대쪽 에선 원래 메시지로 다시 조립하여 손실 없이 도달하도록 한다. 데이터를 작은 묶음으로 보내면 모든 것을 한꺼번에 보내는 것보다 효율성을 유지하기가 더 쉽다. 특정 메시지가 묶음으로 나뉘면, 한 경로가 막혀도 목적지가 동일하게 유지되는 경우 이 묶음들이 여러 경로를 따라 이동할 수 있다. 예를 들어, 사용자가 인터넷에서 웹 페이지를 요청하면 전..

CS 2024.12.27

OSI 4계층: 전송 계층

전송 계층에 대해 알아보자. 0. 전송 계층이 뭘까 전송 계층은 OSI 7계층 모델의 4번째 계층이다. 3계층 네트워크 계층과 함께 데이터 전송에서 핵심적인 역할을 하는 가장 중요한 계층이다. 전송 계층의 주요 역할은 호스트와 최종 시스템 간의 네트워크 트래픽을 제어하여 전체 데이터 흐름을 보장한다. 4계층의 프로토콜은 TCP, UDP 등이 있다. 1. 전송 계층의 기능 전송 계층은 데이터 패킷의 종단 간 통신을 담당한다. 네트워크 환경에서 호스트 시스템 간의 안정적이고 효율적이며 체계적인 데이터 전송을 위해 여라가지 중요한 기능을 제공한다.전송 계층은 상위 계층에서 얻은 데이터를 세그먼트라고 하는 작은 단위로 분할한다. 반대편의 전송 계층은 이러한 비트들을 다시 모아 원래의 데이터 스트림으로 만든다.전..

CS 2024.12.24

IOCP

갑자기 IOCP? 중간은 다 어디갔어?그렇게 됐습니다 0. iocp가 뭘까 Input Output Completion Port의 약자로, 윈도우에서 제공하는, 여러 비동기 I/O 요청을 처리하기 위한 멀티스레딩 모델이다. 비동이 I/O요청 처리를 위한 다양한 기술이 접목되었다. 1. 비동기 I/O는 마우스나 키보드의 입력, 모니터의 출력, 파일 입출력뿐만 아니라 네트워크 통신도 포함된다. 만약 웹페이지를 방문했는데 관련된 html이나 이미지를 다운받는 동안 컴퓨터가 멈춘다면 불편할 것이다. 컴퓨터는 I/O 요청을 처리하는 동안 다른 작업도 할 수 있어야 한다. 이렇게 한 작업을 하는 동안 다른 작업을 동시에 진행하는 것을 비동기라고 한다. 2. Overlapped I/O Overlapped I/O는 No..

CS 2024.12.24

라우팅

오늘은 라우팅에 대해 알아보자 0. 라우팅이 뭘까 라우팅은 하나 이상의 네트워크에서 경로를 선택하는 작업이다. 라우팅은 데이터 패킷을 한 노드에서 다른 노드로 보내는 작업을 한다. 여기서 노드는 라우터라고 하는 네트워크 장치를 말한다. 라우팅은 데이터 패킷을 안정적이고 효율적으로 전달하기 위해서 다양한 라우팅 결정과 메트릭을 사용하여 최단 경로를 찾아낸다.송신자는 데이터 패킷 헤더에 IP를 포함시켜 네트워크로 전송한다.가장 가까운 라우터는 데이터 패킷을 수신하고, 몇 가지 측정 항목을 기반으로 해당 데이터 패킷을 다른 라우터로 라우팅한다.목적지에 도달할 때까지 위의 작업을 반복한다.1. 라우팅의 유형 라우팅에는 일반적으로 3가지 유형이 있으며, 목적에 따라 다른 기능을 제공한다.정적 라우팅(Static ..

CS 2024.12.16

Classless Inter Domain Routing(CIDR)

오늘은 CIDR에 대해서 알아보자 0. CIDR이 뭘까 CIDR은 IP주소를 할당하고 라우팅 하는 방법으로, 클래스별 IP 주소 지정에 비해 효율적으로 사용할 수 있다. CIDR은 IP주소를 클래스가 아니라 네트워크 접두사를 기준으로 할당하고 라우팅할 수 있다는 생각을 기반으로 두고있다. 이는 최초에 상위 8비트를 네트워크 ID로 쓰던 방식과 같다. CIDR 주소는 NID의 비트 수를 IP 주소 뒤에 슬래시로 표기하는 방법을 사용한다. 예를 들어, NID의 길이가 24인 IP 주소 192.168.1.0은 192.168.1.0/24로 나타낸다. 이 표기법은 IP 주소의 첫 24비트가 네트워크 ID 이고 나머지 8비트가 호스트 ID임을 나타낸다.1. CIDR의 장점IP주소를 효율적으로 사용할 수 있다.CID..

CS 2024.12.15

Classful IP Addressing

IP 주소에 대해서는 한번 정리를 했다. 주소의 관리와 할당을 보다 쉽게 하기 위해 5가지 클래스로 나눈다고 했다. Classful IP Addressing의 필요성 1980년대 초에 IP주소는 두개의 부분으로 나눴다. 앞의 8비트를 NID(네트워크 ID), 뒤의 24비트를 HID(호스트 ID)라고 한다. 따라서 총 256개의 네트워크가 있고, 한 네트워크당 16M개의 호스트가 있었다. 이 방식은 작은 조직이라도 하나의 네트워크를 구매하려면 16M개의 호스트를 구매해야 했다. 그래서 클래스별 IP 주소 지정 방식이 필요해졌다. Classful IP Addressing 32비트 IP 주소는 5개의 하위 클래스로 나뉜다. 각 클래스에는 유효한 IP 주소 범위가 있다. 클래스 D와 E는 각각 멀티캐스트와 실험..

CS 2024.12.14

IP주소

오늘은 IP 주소에 대해 알아보자. 0. IP 주소가뭘까 인터넷에서 파일을 다운로드 하거나 웹 페이지를 로드하는 등 인터넷과 관련된 모든 작업을 수행하려면 내 컴퓨터에 주소가 있어야 다른 컴퓨터에서 내 컴퓨터를 찾아서 내가 요청하는 특정 파일이나 웹 페이지를 전달할 수 있다. 이 주소를 IP 주소, 또는 인터넷 프로토콜 주소라고 한다.  인터넷 통신을 편지를 보내는 것에 비유할 수 있다. 누군가에게 편지를 보내고 싶다면, 그 사람의 주소를 알아야한다. 마찬가지로, 인터넷 통신을 하려면 상대방의 주소를 알아야한다. 그래야 다른 사람의 컴퓨터에 정보를 전달하는 혼란 없이 정상적으로 통신할 수 있다. 1. IP 주소의 작동 IP 주소의 작동 방식은 어떤 규칙을 사용하여 연결된 장치에 데이터나 파일을 쉽게 보내..

CS 2024.12.14

OSI 3계층: 네트워크 계층

오늘은 네트워크 계층에 대해 알아보자. 0. 네트워크 계층이 뭘까 네트워크 계층은 OSI 모델의 위에서 다섯번째, 아래서 세번째에 있는 계층으로, 데이터 전송에서 가장 중요한 역할을 하는 계층 중 하나이다. 네트워크 계층의 주요 역할은 데이터의 품질을 유지하고, 출발지에서 목적지까지 데이터를 전달하고 전송하는 것이다. 또 라우팅을 처리하는데, 라우팅은 패킷을 단순히 전달하는게 아니라 출발지에서 목적지까지 가는 최적의 경로를 탐색하는 것을 말한다. 데이터는 다양한 논리적 네트워크 경로와 다양한 장치들을 통해 패킷 형태로 전송된다. 네트워크 계층은 OSI 7계층 모델의 세번째 계층으로, 네트워크에서 데이터 패킷 전송을 위한 경로를 제공한다. 네트워크 계층은 또 데이터 전송을 위한 경로를 구성하고 제어하는 역..

CS 2024.12.13

OSI 2계층 : 데이터 링크 계층

오늘은 OSI 2계층인 데이터 링크 계층을 알아보자. 0. 데이터 링크 계층이 뭘까 데이터 링크 계층은 OSI 모델의 아래에서 두 번째 계층이다. 노드 간 데이터 전달을 담당한다. 주요 역할은 오류 없는 정보 전송을 보장하는 것이다. 또한 송신 및 수신 데이터를 인코딩, 디코딩 및 구성하는 역할을 한다. 이것은 모든 복잡한 하드웨어를 가려주기 때문에 OSI 모델에서 가장 복잡한 계층으로 여겨진다.1. 데이터 링크 계층의 하위 계층 데이터 링크 계층은 두 개의 하위 계층으로 나뉜다. 논리적 링크 제어(Logical Link Control, LLC) 이 하위 계층은 멀티플렉싱, 어플리케이션과 다른 서비스 간의 데이터 흐름을 처리한다. 그리고 이에 대한 오류 메시지와 확인도 제공해야한다. 미디어 접근 제어(M..

CS 2024.12.12