안녕하세요!

FE 개발자 유진주입니다.

2023/12 27

[컴퓨터네트워크] Chapter3.6 TCP 신뢰 전송과 흐름 제어

Chapter3.6 TCP 신뢰 전송과 흐름 제어 TCP 세그먼트 전송 규칙 - 누적 수신확인(Cumulative Acknowledgement) - 단일 타이머(Single Timer) 재전송 기반 오류 복구 - Timeout에 의한 재전송 - 빠른 재전송(Fast Retransmission 흐름 제어(Flow Control) TCP 세그먼트 전송 규칙 - 누적 수신 확인(Cumulative Acknowledgement) 누적적으로 완전하게 수신된 바이트 스트림 번호 확인 중복 ACK 세그먼트 수신 가능 - 중복 ACK(Duplicate ACK) 이미 수신한 확인번호(Acknowledgement Number)를 가진 ACK - 중복 ACK 수신 순서가 바뀐 세그먼트 도착 중간 세그먼트 손실 - 단일 타이..

CS/네트워크 2023.12.14

[컴퓨터네트워크] Chapter3.5 TCP 세그먼트 구조와 재전송 타이머

Chapter3.5 TCP 세그먼트 구조와 재전송 타이머(RTT) TCP 세그먼트 개요 TCP 세그먼트 구조 RTT 추정 재전송 타이머 설정 TCP 세그먼트 개요 - 응용 프로세스 데이터 전송 과정 큰 Application 자르는 기능을 트랜스포트 계층에서 수행 (Segementation) TCP 세그먼트? : 네트워크에서 전송할 수 있는 MTU보다 작은 크기로 Application Data를 잘라서, TCP에 헤더와 처리하는데 필요한 제어정보를 붙여서 만든 데이터 전송 단위 - TCP 세그먼트 헤더(control infomation) 필드 + 데이터(payload) 필드 헤더: madatory(반드시 존재), 데이터: optional(선택적) *Data: 응용계층 데이터(segmentation), He..

CS/네트워크 2023.12.12

[Android] API Key 생성 (Google Map)

Google Developers Console https://console.cloud.google.com/apis/dashboard?project=coffee-app-406705&supportedpurview=project Google 클라우드 플랫폼 로그인 Google 클라우드 플랫폼으로 이동 accounts.google.com 프로젝트 생성 API 및 서비스 → 대시보드 → 프로젝트 만들기 API 및 서비스 사용 설정 Maps SDK for Android 검색 후 클릭 사용설정 API 제한사항 > 키 제한 > ‘Maps SDK for Android’ 선택 애플리케이션 제한사항 > ‘Android 앱’ 설정 API 제한사항 > 키 제한 > ‘Maps SDK for Android’ 선택

App/Android 2023.12.06

[컴퓨터네트워크] Chapter3.5 TCP 연결관리

Chapter3.5 TCP 연결관리 TCP 연결 TCP 연결 설정 TCP 연결 해제 TCP 상태 변화 TCP 연결 - 1:1 소켓 연결 연결 설정 과정(handshaking) 필요 서버 연결 소켓: 서버 IP 주소와 서버 Port 번호 공유 가능 → 하지만, 클라이언트 IP 주소, Port 번호가 다르므로 같은 호스트의 IP 주소와 Port 번호를 가졌더라도, 각각의 소켓이 구분 가능하다! 멀티캐스팅(multicasting) 지원 불가 * 소켓주소: IP 주소 + Port 번호 - Full-duplex(전이중) 통신 양방향 동시 세그먼트 전송 MSS(Maximum Segment Size): 세그먼트의 데이터 필드 최대 크기 (보통 1460 바이트) 송신 버퍼에서 MSS 단위로 송신 - 바이트 스트림(By..

CS/네트워크 2023.12.04

[컴퓨터네트워크] Chapter3.4 오류복구3_Selective_Repeat ARQ

Chapter3.4 오류복구3_Selective_Repeat ARQ 파이프라이닝(Pipelining) Selective_Repeat 작동원리 Selective_Repeat ARQ 예제 송신 윈도우 최대 크기 파이프라이닝(Pipelining) (*Go-back-N과 Seletive_Repeat) : ACK가 회신 되기 전 RTT 동안 링크에 M개의 세그먼트를 전송 - 장점 링크 효율 제거(stop-and-wait보다 M배 높은 효율) - 요구사항 최대 파이프라이닝 세그먼트의 수 M(송신 윈도우)보다 큰 순서번호(Sequence Number) 사용 SN(Sequence Number) 필드 m 비트: 2^m > M (m과 M의 관계는 오류복구 유형에 따라 결정) 순서번호: [0, 2^m -1], mod 2^m..

CS/네트워크 2023.12.03

[컴퓨터네트워크] Chapter3.4 오류복구2_Go-Back_N ARQ

Chapter3.4 오류복구2_Go-Back_N ARQ 파이프라이닝(Pipelining) Go-back-N 작동원리 Go-back-N ARQ 예제 송신 윈도우 최대 크기 장단점 파이프라이닝(Pipelining) : ACK가 회신 되기 전 RTT 동안 링크에 M개의 세그먼트를 전송 - 장점 링크 효율 제고(stop-and-wait보다 M배 높은 효율) Go-back-N 작동원리 : 오류 세그먼트부터 이후의 모든 세그먼트 재전송 - 송신자 동작 절차 1) ACK가 회신되는 RTT 동안 링크에 최대 M개의 세그먼트를 전송하고 버퍼에 유지(송신 윈도우 = M) 2) ACK 수신하면 해당 세그먼트(첫번째 세그먼트)을 버퍼에서 제거하고 송신가능 순서번호 범위를 1씩 이동(송신 윈도우 슬라이딩) 3) 세그먼트 재전송..

CS/네트워크 2023.12.02

[컴퓨터네트워크] Chapter3.4 오류복구1_Stop-and-Wait ARQ

Chapter3.4 오류복구1_Stop-and-Wait ARQ 오류 복구 개념 Stop-and-Wait ARQ(Automatic Repeat Request) Stop-and-Wait ARQ with SN(Sequence Number, 순서번호) 전송 오류 복구 개념 - 정보 전송 단위 데이터그램(datagram): IP, UDP 세그먼트(segment): TCP - 세그먼트 구조 - 세그먼트 오류 1) 세그먼트 훼손: 훼손된 세그먼트 도착(Checksum으로 확인) 2) 세그먼트 손실(loss): 세그먼트 미도착(중간 통신장치(라우터/스위치)의 버퍼 오버플로우) - 세그먼트 수신 확인 세그먼트 정상 수신 → 수신확인(ACK) 세그먼트 회신 훼손 세그먼트 수신 → 폐기 → 미수신 세그먼트 미수신 → 인지 ..

CS/네트워크 2023.12.01