PCB와 TCB PCB(Process Control Block) Process는 자신에 관한 정보를 하나의 데이터 구조에 저장하여 관리한다. 이를 PCB라고 부른다. TCB(Thread Control Block) 하나의 Thread를 관리하는데 필요한 정보를 담고 있는 구조체이다. 프로세스의 상태를 관리하는 PCB보다 적은 양의 정보가 담겨있다. Context 프로세스의 경우 현재 프로세스가 중단 되었을 때, 중단된 시점 부터 다시 프로세스를 실행하기 위한 정보를 말한다. 이는 PCB라는 구조체에 저장된다. Scheduling 스케줄링은 "자원"에 "작업"을 할당하는 행위이다. 자원은 프로세서, 네트워크 연결, 외부 장치 등을 의미하고, 작업은 thread, process 혹은 data flows를 의미..
3 Way-Handshake란? 전송제어 프로토콜(TCP)에서 통신을 하는 장치간 서로 연결이 잘 되어있는지 확인하는 과정/방식이다. 더 쉽게 말해서 송수신자 사이에 연결을 확인하는 과정이다. TCP 프로토콜은 연결지향적이다. 이는 상대방이 내 신호를 받을 수 있는지 확인하고 전송을 하는 것을 의미한다. 이때 내 신호를 받을 수 있는 지 확인하는 것이 3 way handshake이다. #1 SYN 1단계: 들려? 클라이언트가 연결요청 메시지(SYN)을 전송한다. 클라이언트는 Synchronize Sequence Number(SYN)라는 임의의 랜덤 숫자를 함께 전송한다. #2 SYN+ACK 2단계: 응 들려! 너도 들려? 서버가 요청을 수락하며, 클라이언트에게도 들리냐는 연결요청 메시지를 전송한다. 그 ..
TCP(Transmission Control Protocol) IP 프로토콜 위에서 연결형 서비스를 지원하는 전송계층 프로토콜, 인터넷 환경에서 기본으로 사용한다. 3-way handshaking 과정을 통해 연결을 설정하고 4-way handshaking 과정을 통해 연결을 해제한다. 데이터가 전달될 때 수신이 가능한지, 데이터가 잘 갔는지 확인하는 과정을 거치면서 오류와 흐름을 제어하고 신뢰성 있는 데이터가 전달될 수 있도록 한다. 중간 확인 과정이 추가되고 연결을 유지하는 과정에서 추가 리소스가 발생한다. 안정적으로, 순서대로, 에러없이 교환 가능 전이중(Full Duplex) 방식의 양방향 가상 회선 지원 신뢰성 있는 데이터 전송 보장 흐름제어 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우..