본문 바로가기

tcp

[2] 컴퓨터 네트워크 클라이언트 : 서비스를 이용하는 사용자들의 단말기 서버 : 서비스를 제공하는 무인 컴퓨터 네트워크 스위치 - PC간 랜선으로 연결하여 LAN(Local Area Network)를 형성 OSI 7계층 1. 물리 계층 : 하드웨어를 다루며 데이터의 파형을 결정 2. 데이터 링크 계층 - 프레임(frame)이라는 단위로 통신 - LAN 통신이 가능하게 함 - LAN간 데이터를 전송하지만 반드시 전송되지는 않음 3. 네트워크 계층 - WAN(Wide Area Network)이 가능하게 함 - 즉, LAN 간의 통신이 가능하게 하기 위해 네트워크 스위치간의 데이터가 전송되어야 함 - 이 때, 스위치에 데이터를 한 번에 전달하지 못할 경우, 이를 전달하기 위해서는 라우터(router)를 통함 - IP(Interne.. 더보기
[네트워크] 전송 계층(TCP,UDP) 전송 계층(Transport Layer) - 수신지에 신뢰할 수 있는 데이터를 전송하기 위해 필요한 계층으로 TCP, UDP가 관련됨 - 오류 복구, 흐름 제어, 신뢰성 있는 데이터 전송 - 송신 측에서는 데이터를 패킷으로 분할, 수신 측에서는 패킷을 결합하여 순서대로 재조립 - 패킷을 분할할 때 각각의 패킷이 연관된 패킷인 것을 인지하지 않고 독립적으로 관리함, 즉, 분할된 패킷을 순서대로 보내지 않고 무작위로 보내기 때문에 수신측에서도 순서대로 받지 못함 전송 계층의 역할 - 연결 제어 : 패킷을 하나의 경로로 보낼 것인지 결정 - 수신지로 데이터 전송 : 데이터의 모든 패킷 전송과 도착을 검사 - 단편화 : 데이터를 전송 가능한 Segment로 나누고 Sequence number(순서 번호)를 기록.. 더보기
[TCP 혼잡]Bufferbloat 이 글은 2011년 11월 29일 acmqueue에 등재된 bufferbloat에 관련된 내용을 짧게 정리해놓은 글입니다. 원본은 https://queue.acm.org/detail.cfm?id=2071893에서 확인하실 수 있습니다. Bufferbloat 네트워크 분야에서 종단 간 지연(End to End Latency)은 통신 속도에 있어 매우 중요하다. 일반적으로 컴퓨터 간의 통신을 한다고 하면 누구나 한번쯤은 TCP/IP라는 단어를 들어보았을 것이다. TCP에서는 종단 간 지연을 줄이기 위해 여러 가지 congestion control(혼잡 제어) 기법들을 이용하는데 대표적으로 slow-start(슬로우 스타트)이다. slow-start는 여러 네트워크들이 동시에 통신하면 네트워크 장치(netwo.. 더보기
[네트워크] IP Protocol(아이피 프로토콜) 네트워크 계층 - 데이터 링크 계층은 이더넷 규칙을 기반으로 데이터의 전송을 담당 = 같은 네트워크에 있는 컴퓨터에는 데이터 전송이 가능하지만 다른 네트워크에 있는 컴퓨터에는 전송이 불가능 - 네트워크 계층을 통해 서로 다른 네트워크간의 통신을 가능하게 하며, 라우터(집에 있는 인터넷 공유기)라는 네트워크 접속장치를 통해 통신 - 데이터 전송과 경로 선택 기능을 제공하며, 라우팅 프로토콜을 통해 최적의 경로를 선택 네트워크를 통한 데이터 통신에는 수신지의 주소를 알아야 한다. LAN에 있는 MAC주소로 통신은 가능하지만 다른 네트워크에 있는 컴퓨터에게는 데이터를 전송할 수 없다. 서로 다른 네트워크끼리 통신하기 위해서는 네트워크를 식별할 주소가 필요하고 이를 IP주소라고 한다. 라우팅(Routing) -.. 더보기
[네트워크] 프로토콜과 TCP/IP 프로토콜이란? 서로 다른 시스템에 있는 개체 간에 성공정으로 데이터를 전송하는 통신 규약 (네트워크에 연결된 컴퓨터들끼리 데이터를 주고받을 수 있도록 미리 약속한 전송 규약 및 규칙) 프로토콜은 계층적 구조로 정의되어 있고, 계층별 역할이 구분됨 예를 들어서 인터넷을 이용한다고 하면 인터넷의 기본 프로토콜 - TCP/IP 원하는 웹사이트의 웹페이지를 볼 수 있는 - HTTP 메일을 주고 받을 시 - SMTP, POP3 인터넷으로 데이터나 파일의 업로드, 혹은 다운로드 시 - FTP 등의 프로토콜이 사용된다. 프로토콜이 필요한 이유는 무엇인가? 사용자 별로 환경이 다르고 통신의 규칙이 없으면 충돌, 지연 등 여러가지 문제가 발생할 수 있기 때문이다. 예를 들어 한쪽은 맥북(Linux 기반)을 사용하고, 다.. 더보기