반응형

Software Courses/Network 34

Transport : RDT (Reliable Data Transfer)

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. 들어가기 전에 대전에서 독일 뮌헨으로 데이터를 보낸다고 하자. 본인이 대전에서 메시지를 보내면 수 많은 라우터를 지나갈 것 입니다. 아마도 서울을 지나 도쿄, LA, NW, 베를린 등을 거칠 것 입니다. 그렇다면, 전송 중에 데이터에 문제가 발생하지 않을까요? 발생할 것입니다. 이전에 배운 TCP에서는 신뢰성 특성이 있었습니다. 어떻게 신뢰성을 보장할까요? 이 how에 대한 방법을 여기서 배우겠습니다. TCP는 너무 복잡하니 RDT로 설명하겠습니다. RDT는 실제로 사용하지 않지만, 신뢰성을 보장..

Transport : UDP

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Header - 데이터 블록의 맨앞에 위치한 보충 데이터 - Header의 종류는 header가 생성된 프로토콜의 기능을 나타냄 UDP segment header - source port number : multiplexing과 demultiplexing을 위해서 존재 - dest port number : multiplexing과 demultiplexing을 위해서 존재 - length : segment의 길이 - checksum : 전송 중 오류 여부 - header로 알 수 있는 UDP의 기능..

Transport : Multiplexing, Demultiplexing

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Multiplexing, Demultiplexing - Multiplexing : 여러 socket에서 데이터를 모아서 보내는 일 - Demultiplexing : 수신된 세그먼트에서 header를 참조하여 각각의 socket으로 보내주는 일 - TCP와 UDP에서 용어는 같지만 다른 과정이 수행 UDP Multiplexing, Demultiplexing - 한 개의 소켓에 여러 소켓이 연결 가능 1:N 관계 - Port 번호만 보고 데이터 전송 - Port 번호에 따라 고유한 socket이 존재..

Application : Socket programming

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Socket - 두 프로그램이 네트워크를 통해 서로 통신을 수행할 수 있도록 양쪽에 생성되는 인터페이스 - 주로 TCP 기반 소켓과 UDP 기반 소켓을 사용 동작 - Server의 socket() : 소켓을 생성 - Server의 bind() : 생성된 소켓에 IP address와 port 번호를 묶음 - Server의 listen() : 서버는 클라이언트에서 연결 요청이 올 때까지 대기 - Server의 accept() : 미결정 큐에 있던 연결 요청을 꺼내서 연결 생성 - Server의 sen..

Application : DNS

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. DNS - Domain Name System - Domain Name : 넓은 의미로는 네트워크상에서 컴퓨터를 식별하는 호스트 이름을 가리키며, 좁은 의미에서는 도메인 레지스트리에게서 등록된 이름을 의미 - 역할 : Domain Name과 IP 주소를 연결. 마치 전화번호부에서 이름으로 전화번호를 찾는 것과 동일 - 예시 * Name : Domain name * Value : IP address * Type : 어떻게 기록할 것인지 (밑에서 설명) * TTL : 만료 기간을 기록하여 만료가 끝나면..

Application : Proxy server

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Proxy server - Proxy : server와 client 사이에 중계하는 대리 통신 - Proxy server : 대리 통신을 하는 컴퓨터 시스템이나 응용 프로그램 - Proxy server는 proxy server에 요청된 내용들을 캐시를 이용해서 저장 - Client에게 빠른 데이터 전송 가능 - Server에 몰리는 트래픽 감소 Proxy server가 필요한 이유 - 저렴한 비용으로 속도 개선 - 문제 상황 : 사용자가 브라우저를 클릭해서 요청을 보내고 응답을 받는 시간이 오래 ..

Application : HTTP

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. HTTP (Hyper Text Transfer Protocol) - 인터넷에서 데이터를 주고 받을 수 있는 프로토콜 - Hyper Text : 사용자가 한 문서에서 다른 문서로 접근할 수 있는 텍스트 - TCP 기반 * TCP connection 생성 - Stateless * 서버는 이전 clients의 요청에 대한 정보를 기록하지 않음 * 단지 요청이 오면 보내기만 함 - 동작 * 간단한 동작 * Client는 Hyper Text를 요청 * Server는 Hyper Text를 보냄 HTTP co..

Application layer : 개요

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Application layer - Application이라고 하면, 흔히 사용하는 프로그램, 프로세스, 소프트웨어 등 - 예시 : 브라우저 소프트웨어와 웹 서버 소프트웨어 통신 통신 - 네트워크에서 서로 다른 프로세스들이 다른 호스트 안에서 서로 통신해야 하기 때문에 상대 호스트의 IP주소와 port를 알아야 함 - IP 주소 : 어떤 호스트(컴퓨터) 인지 아는 주소 - Port : 호스트(컴퓨터) 안에서 어떤 프로세스 인지 아는 주소

네트워크 구성요소 : Network Core

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Network Core - Network edges를 연결해주는 중간 역할 - 예시 : 라우터, 허브 전송 방식 1) Circuit Switching (회선 교환 방식) - 출발 종단 시스템에서 목적 종단 시스템까지 경로 상의 필요한 자원들을 모두 예약하는 방식 - 데이터를 일정 전송률로 보낼 수 있음 - 연결되어 있는 동안 다른 사용자는 그 회선을 쓸 수 없음 - 예시 : 전화 통화에서 A와 B가 통화를 할 때, C가 A에게 전화를 걸면 연결할 수 없음 2) Packet Switching (패킷..

네트워크 구성요소 : Network Edge

본 내용은 한양대학교 이석복 교수님의 강의를 참고하여 정리하였습니다. 교재는 Pearson/Addison Wesley에서 출판한 Computer networking : a top-down approach입니다. Network Edge - 네트워크의 가장자리에 있는 시스템 - 예시 : 지금 사용하는 컴퓨터, 핸드폰, 허브, 스위치 등 용어 표현 - 노드 * 네트워크 상에 있는 모든 장치 * 네트워크를 이용하기 위한 장치 : 호스트 * 네트워크 상에서 데이터를 교환해 주는 장치 : 모델, 허브, 스위치 등 - 호스트 * 네트워크를 이용하기 위해 네트워크에 연결된 컴퓨터 혹은 장치 * 예시 : 지금 사용하는 컴퓨터, 핸드폰, 구글 서버 - 서버 * 네트워크 상에서 요청에 응답할 수 있는 호스트 * 호스트와 서..

반응형