목록2023/04/06 (3)
HJW's IT Blog
Cooperating Process란? Cooperating Process(협력 프로세스)란 여러개의 프로세스가 서로 상호자용하여 동시에 실행되는 경우를 말한다. 협력 프로세스는 여러 자원을 서로 공유하게 되며 서로 접근하고 수정할 수 있게 된다. 파일, 데이터베이스, 공유 메모리 등등 여러 프로세스가 공유자원을 동시에 사용하게 될 때, concurrency problem(동시성 문제) 가 발생하게 된다. 이러한 문제를 해결하기 위해 critical section을 한 프로세스가 사용중일때, 다른 프로세스가 사용하지 못하도록 하는 SW적 알고리즘이 필요하다. 장점 Cooperating process는 여러개의 컴퓨터, 네트워크에 분산되어 실행 될 수 있다. 즉, 작업의 처리 속도를 높일 수 있다 Coop..
TCP란 전송된 데이터를 신뢰성 있게 receiver 측에 전송을 보장하는 프로토콜이다. TCP 특징 Point to Point one sender one receiver Connection-Oriented 신뢰성이 높다 Handshaking 과정 필요 Pipelined Flow/Congestion Control을 위해 Maximum Segment Size Full Duplex Daa 양방향 통신이 가능 TCP는 다음으로 이루어져 있다. Pipelined Segments Cumulative ACK Single Retransmission Timer Triggered by Timeout Duplicate ACK TCP Retransmission Scenario ACK가 손실되었을 때 이다. Host A 가 ..
Pipelined protocol이란 sender 가 여러개의 패킷을 한번에 보내는 것을 말한다. 두가지 종류가 있는데 이는 Go-Back-N 과 Selective Repeat 방식이 있다. Go-Back-N Sender 는 N unakced 패킷을 가질 수 있다. Receiver는 cumulative(누적) ack만 보낸다 받은 데이터에 gap 이있을시 보내지 않음 Sender는 가장 오래된 unacked 패킷에 대한 타이머가 있고 timeout시 모든 unacked 패킷을 보낸다 버퍼를 window라 칭하고, 버퍼의 크기를 window size라 칭한다. 버퍼의 시작점: send base 다음 패킷 번호: next_seq_num 다음은 Go-Back-N 의 FSM이다. Window size는 4라고 ..