q MIB (Management Information Base) v 네 트 워 크 관 리 에 필 요 한 모 든 정 보 를 객 체
의 형 태 로 표 현 하 여 보 관 하 고 있 는 저 장 소 (Archive)
v 계 층 적 트 리 구 조 형 태 로 배 열
q SMI (Structure of Management Information) v MIB에 서 사 용 될 수 있 는 자 료 의 형 태, MIB의
구 성 객 체 들 의 표 현 및 명 칭 등 에 대 한 내 용 을 기 술
인터넷기술개론
UDP & TCP
Fall 2001
차 동 완
(email: tchadw@sorak.kaist.ac.kr)
한국과학기술원테크노경영대학원정보통신경영연구실 67
강의 내용
q
프로세스간 통신
q전달계층 동작과 기능
v 캡슐화, 역 캡슐화 v 큐잉(Queuing) v 다중화, 역 다중화 q
TCP
q
UDP
인터넷기술개론
프로세스간 통신
q
네 트 워 크 계 층 프 로 토 콜
(IP)v 호 스 트-대-호 스 트 통 신 관 장
v 목 적 지 호 스 트 까 지 패 킷 전 달
q
전 달 계 층 프 로 토 콜
(TCP, UDP)Ú “클 라 이 언 트 -서 버 모 델”
한국과학기술원테크노경영대학원정보통신경영연구실 69
프로세스간 통신 (Cont’d)
q 전달 계층 프로토콜 TCP나 UDP 사용 q 포트(port) 개념 사용
v 클라이언트와 서버 프로세스 사이에 교환되는 모든 패킷의 헤더 에 송,수신측 포트번호 명시
q 응용 프로세스와 포트의 관계
응 용 프 로 세 스
포 트m …
…
TCP/UDP
응 용 프 로 세 스
포 트n …
…
TCP/UDP
인터넷기술개론
프로세스간 통신 (Cont’d)
q 클라이언트-서버 모형
v개별 서버 응용 프로세스는 설정된 포트에서 대기 v클라이언트 응용 프로세스는 자신의 호스트 포트를 통해
서버 프로세스 측의 설정된 포트에 접속하여, 연결설정 요청 v서버 프로세스가 수락하면 본격적 통신 시작
Ú 포 트(Port) 이 용
한국과학기술원테크노경영대학원정보통신경영연구실 71
포트 (Port) 이용
q 포트 (Port)
v 응용 프로세스를 식별하는데 사용하는 논리적인 장소 v 16 비트로 표시되어 65,536까지의 번호 사용
v 정해진(Well-known) 포트
ØE-mail, WWW, FTP, Telnet 등의 일반적인 서버 프로세스에 할당 Ø모든 호스트에서 동일한 포트번호 사용
Ø이를 위한 용도로1,023번 이하의 포트 번호를 할당
(e.g) FTP 서버 프로세스: 21번, 웹 서버 프로세스: 80번 포트 v 임시(Ephemeral) 포트
Ø 클라이언트 프로세스, 표준화 되지 않은 서버 프로세스가 사용
인터넷기술개론
포트 이용 (Cont’d)
q 서버 프로세스 종류에 따른 사용포트 구분
v UDP를 사 용 하 는 비 연 결 형 순 차 서 버
à 대기하고 있던 well-known 포트 계속 사용 v TCP를 사 용 하 는 연 결 형 동 시 서 버
à 클라이언트가 well-known포트로 접속하면 OS로부터 새로운 임시포트 할당.
한국과학기술원테크노경영대학원정보통신경영연구실 73
IP 주소와 포트 번호의 관계
인터넷기술개론
전달 계층의 동작과 기능
q 캡슐화와 역캡슐화
v TCP의 경우: 세그먼트(Segment) 단위로 분할 v UDP의 경우: 분할하지 않고 UDP 헤더만 추가 q 큐잉 (Queuing)
v 포트마다 메시지 대기용 입력 큐,출력 큐 할당 q 다중화와 역다중화
v 송신측에서UDP나 TCP는 다중화 기능을 수행하고, 반대로 수신 측에서는 역다중화 기능을 수행
한국과학기술원테크노경영대학원정보통신경영연구실 75
캡슐화 /역캡슐화 (UDP 경우 예)
인터넷기술개론
큐잉 (UDP 경우 예)
한국과학기술원테크노경영대학원정보통신경영연구실 77
TCP 서비스
q End-to-end connection을 통한 신뢰성 있는 데이터 전송 서비스 제공
v 스 트 림(Stream) 데 이 터 서 비 스
Ø송신TCP : 데이터 스트림을 쪼개서 세그먼트 형성, 전송 Ø수신TCP : 세그먼트들을 순서대로 조립, 응용 프로세스에 전달 Ø버퍼사용
v 전 이 중(Full Duplex) 서 비 스 Ø데이터 동시에 양방향 전송 가능 v 신 뢰 성(Reliable) 서 비 스
Ø 오류제어 기능을 통해 오류 발생시 재전송 요구
인터넷기술개론
TCP 세그먼트 형식
한국과학기술원테크노경영대학원정보통신경영연구실 79
TCP 세그먼트 옵션(Option)
q 1 바이트 옵션
v 옵션 끝 (end of option) v 무 동작 (no operation) q 다중 바이트 옵션
v 최대 세그먼트크기(Maximum Segment Size: MSS)
Ø목적지에서 수신할 수 있는 세그먼트 데이터 부분의 최대 크기 정의 v 윈도우 확장인자(Window Scale Factor)
Ø기본헤더의 윈도우 크기 증대 v 타임스탬프(Time Stamp)
Ø재전송을 위한 타임아웃 길이 결정
인터넷기술개론
TCP 세그먼트 옵션 (예)
Ú 최 대 세 그 먼 트 크 기
Ú 윈 도 우 확 장 인 자 옵 션
Ú 타 임 스 탬 프 옵 션
한국과학기술원테크노경영대학원정보통신경영연구실 81
TCP 흐름제어
q 목적지에서의 오버플로우(Overflow)를 예방하고 네트웍 혼잡도 일정 수준 이하로 유지
Ú 슬 라 이 딩 윈 도 우 프 로 토 콜(Sliding Window Protocol) 사 용
인터넷기술개론
윈도우 크기 관리
q 윈도우의 크기는 수신측에 의해서 결정되고, 확인응답 세그먼트를 통해 송신TCP에게 통보
한국과학기술원테크노경영대학원정보통신경영연구실 83
TCP 오류제어
q 오류 발생
v 훼손 세그먼트 v 손실 세그먼트 v 중복 세그먼트
v 순서가 어긋난 세그먼트 v 확인 응답의 손실 q 오류 발견과 정정
v 검사 합(Checksum), 확인(Acknowledgment), 타임아웃(Timeout) 을 통하여 오류를 발견
v 오류정정은 단순히 해당 세그먼트 재전송
인터넷기술개론
훼손 세그먼트 (오류발생 예)
한국과학기술원테크노경영대학원정보통신경영연구실 85
TCP 연결 방식
q 연결 설정
v 서버 프로세서가 자신의TCP에 게 수동개방(passive open) 요청 v 클라이언트 프로세스가 서버의
TCP에게 능동개방(active open) 요구
v 3단계 핸드셰이크(three way handshaking) 과정을 통해 연결 설정
• Three-way Handshaking
인터넷기술개론
TCP 연결 방식 (Cont’d)
q 연결 종료
v 클라이언트, 서버 어느쪽에서 도 종료가능
v 양방향의 연결종료를 위해 4 단계 핸드셰이크 과정 필요
• Four-way Handshaking
한국과학기술원테크노경영대학원정보통신경영연구실 87
TCP 혼잡제어
q 혼잡(Conjestion) 현상
v 라우터가 처리할 수 있는 속도보다 빨리 데이터그램을 수신하는 경우에 발생
q 혼잡 제어
v 수신TCP가 알려주는 윈도우크기와 혼잡 윈도우크기 중 작은 값 을 윈도우크기의 실제 값으로 결정
q 혼잡 윈도우크기 결정 방식
v 증가방식 v 감소방식
Ø임계치를 기존의 반으로 줄임
• 윈도우 크기 증 가 방 식
인터넷기술개론
검사 합 (Checksum)
한국과학기술원테크노경영대학원정보통신경영연구실 89
검사 합의 계산 대상
• TCP(UDP) v.s IP
TCP 경우
IP 경우
인터넷기술개론
TCP 타이머
q 재전송(retransmission) 타이머
v 세그먼트 전송의 확인응답을 기다리는 시간 v 왕복시간(RTT) 값에 연동하여 동적으로 변경 q 안정화(persistence) 타이머
v 송신TCP가 마냥 기다리는 교착상태 방지 q 킵얼라이브(keepalive) 타이머
v 두 호스트간에 설정된TCP연결이 오랜 시간동안 idle한 상태로 있 는 것을 방지
q 시간-대기(time-waited) 타이머