[ 네트워크 ] 3-way handshake, 4-way handshake 과정을 설명해 보세요.
·
공부 정리/면접 준비
참고 ) TCP와 UDP의 특징을 설명해 보세요. TCP/UDP 모두 OSI 7 Layer 중 Transport layer에서 사용하는 기술입니다. TCP는 3-way handshake 과정을 통해 연결을 설정하고 4-way handshaker과정을 통해 해제합니다. TCP는 흐름 제어를 위해 보편적으로 Sliding Window 방식을 사용합니다. 한 번에 처리할 수 있는 데이터를 정해 놓고, 보내고, 응답받고, 윈도우를 밀어내는 방식을 반복해서 전송합니다. 이 때, Receiver는 Sender로 ACK을 보냅니다. ACK을 보낼 때, Seq번호를 순차적으로 같이 전송하기 때문에 Sender는 같은 Seq번호의 ACK이 여러 번 도착할 경우 문제가 발생한 것을 알 수 있습니다. TCP는 세그먼트가 손..
[ 네트워크 ] DNS서버에 요청하는 과정을 자세하게 설명해 보세요.
·
공부 정리/면접 준비
www.google.com 에 요청한다고 가정하겠습니다. 브라우저는 DNS서버에 요청하기 전, 브라우저에 도메인이 캐싱되어 있는지 확인합니다. 없을 경우, OS의 hosts파일에 도메인이 있는지 확인합니다. 없을 경우, local dns서버에 물어봅니다. local dns서버는 root name서버의 ip주소를 기록한 hint파일이 있어, 이것을 참조하여 local dns 서버로 요청을 보냅니다. root name서버는 NS레코드와 A레코드가 있는 Glue레코드를 참조하여 top-level name server를 참조하라고 응답합니다. top-level name server - com 서버는 그 아래 서버에 대한 정보를 갖고 있어 google.com의 네임서버를 참조하라고 응답합니다. 최 요청을 받은 네..
[ 네트워크 ] 웹사이트에 접속할 때 무슨 일이 일이 일어나는지 설명해 보세요.
·
공부 정리/면접 준비
주소창에 URL을 입력하면 브라우저는 DNS서버에 요청을 해서 IP주소를 얻습니다. IP주소를 얻으면 HTTP를 이용해서 IP주소로 웹사이트에 대해 요청합니다. 서버는 요청을 받으면, 처리해서 다시 응답을 보냅니다. 브라우저는 응답을 받으면 HTML코드를 파싱해서 화면에 출력합니다.
한화 비전 2023 상반기 신입 채용 코딩 테스트 후기
·
잡글/정보 공유 - 후기
나는 이번 5월 6일경 한화비전 코딩테스트를 보았다.S/W 직군의  S/W Application 개발 직군에 지원을 했었는데, 오픈 채팅방을 보아 아마 다른 직군들도 코테 문제는 모두 동일했던 것으로 보인다. 5문제 2시간으로 10시부터 12시까지 진행이 되었다.   대략적으로 오픈채팅방을 참고해보았을 때 난이도는 프로그래머스 기준 3~4 정도로 의견이 모이는 듯했다.  그리고 나도 이에 동의하는 바이다. 그리고 이에 대부분 1솔~2솔 정도로 푼 인원이 많아보였다. 나는 처음 시험을 보았을 당시에는 이거 잘하면 1솔합도 나올수 있지 않을까? 하고 생각했는데, 투표된 것을 보니 1.5솔 정도는 되어야 합격하지 않을까 생각이 들었다.물론 이건 추측일뿐 아직 모르는 것 같다. 이 톡방 사람들만 조금 풀었을 가..
Lv2.(깊이/너비 우선 탐색) 게임 맵 최단거리 - C++
·
코딩 테스트/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 저번에 작성한 Python 코드와 완전 동일하게 구현했다. 근데 먼가 파이썬으로는 안보고 혼자 구현이 되었는데 분명 동일한 알고리즘인데도 C++은 구현이 좀 느렸다. 아마 익숙도의 차이일까? #include #include using namespace std; class Node{ public: int x; int y; int dist; Node(int x,int y,int dist) { this-..
Lv1.(완전탐색) 모의고사 - Python,C++
·
코딩 테스트/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/42840?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr C++ 코드 #include #include #include using namespace std; vector solution(vector answers) { vector answer; vector all_student; vector one = {1,2,3,4,5}; vector two = {2,1,2,3,2,4,2,5}; vector three = {3,3, 1, 1, 2..
Lv.3 ( 해시 ) 베스트앨범 - C++
·
코딩 테스트/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/42579?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include #include #include using namespace std; bool cmp(const pair& a, const pair& b) { return a.first > b.first; } bool cmp2(const tuple & a, const tuple & b) { return get(a) > get(b); } vec..
Lv2.(해시) 의상 - C++
·
코딩 테스트/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/42578?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; int solution(vector clothes) { unordered_map map; for (int i = 0; i < clothes.size(); i++) { map[clothes[i][1]].push_back(clothes[i][0]); } int answer = 1; for (a..
포카칩인심
포카의 IT 블로그