[CS지식] 면접대비 목터뷰 질문 정리

😎·2023년 3월 17일
0

CS지식

목록 보기
6/7

Q. TCP 3 way handshake란 무엇인가 ?

TCP 3 Way Handshake는 TCP/IP프로토콜을 이용해서 통신을 하기 전 연결을 하고자 하는 두 장치간의 논리적 연결의 성립을 확인하는 방식입니다.
3번의 확인 과정을 거치므로 3 way handshake라 불리며,
동작 과정은 1. SYN (synchronize sequence numbers) 연결 확인을 위해 보내는 무작위의 숫자값으로 클라이언트에서 서버로 보내고 2. ACK (acknowledgements) Client 혹은 Server로부터 받은 SYN에 1을 더해 SYN을 잘 받았다는 ACK와 SYN을 같이 보냅니다. 3. ACK (acknowledgements)를 보내 연결을 확인합니다.


Q. TCP와 UDP 프로토콜의 차이점은?

TCP 프로토콜은 연결지향 프로토콜이며, 데이터의 전달이 보증됩니다.
또한 높은 신뢰성을 보장하며 데이터 전달의 순서또한 보장 됩니다.
UDP 프로토콜은 비연결형 프로토콜이며, TCP 프로토콜과 달리
데이터의 전달 보증과 순서 또한 보장되지 않습니다.
다만 TCP 프로토콜에 비해 단순하고 빠르다는 장점이 있습니다.


Q. Base64 인코딩이란 ?

Base64 인코딩은 8비트 이진 데이터를 6비트 크기로 바꿔 읽은 후 10진법으로 읽어들여 Base64의 알파벳으로 바꿔주는 것입니다.

인코딩 원리는

원본 문자열을 아스키코드 값으로 변환 후 2진수 binary 값으로 변환한다 이후
데이터를 6bit씩 끊어서 base64 색인표에 일치하는 문자로 encoding 진행 합니다.

6비트당 2비트의 overhead 발생함에도 불구하고 사용하는 이유는 통신과정에서 바이너리 데이터의
손실을 막기위해 사용합니다.


Q. 프로세스와 스레드 란 ?

프로세스란 메모리에 올라와 실행되고 있는 프로그램의 인스턴스 즉 동적인 개념으로는 실행된 프로그램을 의미하며,
기본적으로 프로세스당 최소 1개의 스레드(메인 스레드)를 가지고 있습니다.

스레드란 프로세스내에서 실행되고 있는 여러 흐름의 단위를 의미합니다.

profile
개발 블로그

0개의 댓글