묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
TCP/IP 통신 및 포트에 대한 질문
3 way handshake 과정이 완료되면 서버와 클라이언트가 연결된 상태이므로데이터(HTTP 메시지)가 담긴 패킷을 주고받게 된다. 이때 TCP 계층에선 데이터가 성공적으로 전송/수신됐는지 등을 검증한다고 배웠는데요. 그럼 3way handshake나 수신받은 패킷의 헤더들을 단계별로 확인한 뒤 실제 데이터를 소켓으로 전달하는 작업은 운영체제 관여 하에 이뤄지나요? 클라이언트 애플리케이션은 남은 포트 중 랜덤으로 할당받고(port=0),서버는 80 등으로 미리 지정해서 포트를 받는데 그러면 해당 프로세스의 포트가 정해지는 시점은 소켓을 생성할 때인가요? 프로세스 한개당 반드시 하나의 포트만 할당되나요? (ex: 포트 두개를 바인딩하고서버 소켓을 두개 연다, 한 클라이언트 프로세스가 여러 로컬 포트를 할당받을 수 있다 등이 가능한지..)실제 여러 포트를 할당받을 수 있다면 어떻게 활용되는지 궁금합니다.일반적으로 웹 서비스는 웹 서버(80 포트)와 WAS(8080 포트)로 구성하여웹 서버가 처리하지 못하는 요청은 WAS로 위임한다고 했는데, 웹 서버와 WAS 간 연결에도 http 통신을 사용한다면 웹 서버 프로세스는 기존 80 포트로 바인딩된 소켓을 생성해서 통신하는 것인가요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
연결이 유지가 된 상태에서의 자원 소비,
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요! 재밌게 보고 있습니다.50초쯤에 클라1,2,3이 하나의 서버에 연결이 되었을 때, 자원의 소모가 계속하여 발생한다고 하셨는데, 이때 클라쪽에서 요청이 없다면 어떤 소모가 서버쪽에서 발생하고 있는지가 궁금해 질문드려봅니다..! 그리고 TCP/IP로 대부분 통신을 한다고 하셨는데, HTTP 프로토콜을 사용하게 된다면 어떠한 동작에 의해 비연결성으로 바뀌는 건지요??
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
네트워크 통신에 관한 질문...
안녕하세요...!현재 게임 서버 포폴을 만들고 있는데요.TCP 서버와 UDP 서버 두 개를 운영합니다.제 IP는 공인 IP를 사용하고친구는 사설 IP를 사용합니다.TCP 통신을 할 때는 서로 문제가 없었습니다.근데 UDP 통신을 사용하니 제 쪽으로 패킷이 수신이 되는데 제가 (사설 IP 쪽으로) 보내는 패킷은 상대방이 수신이 안됩니다 ㅠㅠ...저는 IP 때문에 문제가 발생하는 것 같은데 혹시 이유가 뭔지 여쭤봐도 될까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
[에러 공유] disposeed object
args.connectedSocket을 socket으로 줄여쓰고 싶어서 이렇게 코드를 짜면 계속 disposed object 에러가 난다. 해결법 : socket변수를 따로 만들지 말고 루키스 선생님의 코드처럼 그냥 args에서 connectsocket을 가져와야된다. https://stackoverflow.com/questions/71450166/when-is-an-object-disposed-if-it-uses-using-and-it-is-being-used-in-a-few-meth 영어가 미숙해서 정확히 이해는 못했지만 { }를 나갔다가 오면 문제가 생기는 듯하다
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Reader-Writer Lock 질문
동일한 쓰레드 내에서 WriteLock을 잡은 상태에서 ReadLock도 잡을 수 있는 것은 이해를 했습니다.그래서 한 쓰레드가 WriteLock도 잡고 ReadLock도 잡은 상태에서 WriteLock를 통해 데이터 수정을 한다면 ReadLock에서는 수정이 되기 전에 데이터를 읽게 되는 것이 아닌가요??예를 들면, WriteLock에서 잡은 데이터가 1이고 그 후에 ReadLock을 잡으면 Read부분에서는 1에 데이터를 읽는데 이 상태에서 WriteLock에서 1에 데이터를 2로 수정을 한다면 ReadLock에서 잡은 데이터가 2로 수정이 안되지 않나요??
-
해결됨20년 경력자의 알기쉬운 컴퓨터네트워크
엔드포인트에 아이피 할당은 어떻게 하나요
세션계층들어가니깐 엔드포인트들이 갑자기 다. 아이피가 부여되어있네요
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
비주얼 스튜디오 질문입니다.
루키스님께서 해주시는 강의 귀에 쏙쏙 들어와서 항상 감사의 말을 먼저 드립니다. 루키스님의 강의 중 터미널 창이 매우 깔끔하게 촘촘히 박혀있으신데 제 터미널창은 세로로 길쭉하여 결국 코드에 TILE뒤 << " "; 이런 식으로 억지로 띄워썼습니다.혹시 이 방법 말고도 다른 방법이 있으신지 견식을 여쭙고자 합니다.가르쳐 주신다면 정말 감사하겠습니다.
-
해결됨그림으로 쉽게 배우는 네트워크
수업 자료를 한번에 받을 수 있는 방법은 없을까요?
각 강의마다 강의 자료를 올려주신거 같은데한번에 다운로드하는 방법이 있나요?감사합니다~!!
-
해결됨[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
Select와 Overlapped의 차이에 대해 좀 헷갈리는 부분이 있습니다.
Overlapped 방식은 비동기 + 논블로킹 이고 이전 예제 WSASelectEvent를 이용한 예제는 동기 + 논블로킹 으로 이해 했습니다.Overlapped의 로직 흐름은 while문 진입 후 Event방식의 경우 WSARecv의 반환값이 SOCKET_ERROR일때 WSAGetLastError()가 WSA_IO_PENDING이라면 Sleep 혹은 WSAWaitForMultipleEvents으로 대기하다가 콜백방식이면 깨워서 처리, 이벤트방식이면 시그널되었으므로 이후 다음 코드 실행Select의 로직 흐름은 while문 진입 후 WSAWaitForMultipleEvents로 대기 후 시그널되면 인덱스정보로 세션의 위치를 알아낸 후 해당 세션의 소켓을 통해 NetworkEvent를 확인해서 Accept인지 Recv플래그를 통해 적절한 처리이렇게 정리하고 나니 결국 Overlapped는 Recv를 먼저 실행한 후 대기하는 것이고 Select는 대기한 후 Recv하는 것이구나 라는 생각이 들었고, 처음에 보여주신 블로킹/논블로킹, 동기/비동기에 관한 그림으로 볼 때 Select와 Overlapped 모두 Sync-NonBlocking과 같이 동작하는게 아닌가 하는 생각이 들었습니다. 왜냐하면 INFINITE로 두면 반환할때까지 Blocking 방식처럼 동작할 것이라고 생각했고, INFINITE가 아닌 Timeout을 주면 주기적으로 확인한다는 것이므로 Sync-NonBloking처럼 동작한다고 생각했습니다. 제가 생각한 것이 맞는지 궁금합니다.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 응용
private ip와 public ip 할당
private ip를 공유기를 사용할때 말고 할당받을 수 있는 또 다른 예시들이 있을까요? public ip를 할당받을 때의 예시도 궁금합니다. 감사합니다.
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
hostfile과 cache dns
안녕하세요 선생님 강의 덕분에 TCP/IP 통신과 네트워크의 전반을 이해할 수 있었습니다 감사합니다! 다름이 아니라, dns 파트 정리 중 hostfile과 cache dns 개념이 헷갈려서 질문 드립니다...! Q. hostfile과 cache dns는 같은 의미인가요?
-
해결됨[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
C++ 프로그램 관련
대중적으로 C++를 공부할 때 비주얼 스튜디오를 사용하기도 하지만 Rider 프로그램도 있는 것으로 알고 있습니다. 개인적으로 인텔리제이를 선호하는 터이기도 하고, 언리얼 공부를 위해 C++를 공부하고 있는데, Rider를 사용해서 수강해도 되는 부분일지 궁금합니다.
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
분할전송 관련 질문
1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요 강의 잘 듣고있습니다분할전송에서 Content-Length를 제대로 파악할수가없어서 지정을 하면안된다고 하셨는데아예 Content-Length를 지정할 방법이 없는걸까요?ex) 난 3byte씩 10번 보낼래이런식으로 말이죠 갑자기 궁금해져서 질문남겨봅니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
질문있습니다
if (_popCount == 1) { Node* node = _pendingList.exchange(nullptr); if (--_popCount) { DeleteNodes(node); } else if (node) { ChainPendingNodeList(node); } delete oldHead; }_popCount가 1인 상태가 나 혼자 삭제하고 있는 중이고 혼자 삭제하는 중이라면 삭제가 예약된 데이터들도 삭제한다고 이해를 했습니다. 삭제가 예약된 데이터들을 삭제를 할 수 있는지 체크하는 부분이 위에 있는 if(--popCount) 조건문으로 알고 있는데 여기서 --_popCount를 하면 _popCount가 0이 되어서 나 혼자 삭제하는 중이여도 다른 예약된 데이터들을 삭제를 할 수 없는거 아닌가요??
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
Cmake 에서 Generate 할때 CMakeLists.txt 파일이 없다는 Error는 어떻게 해결할 수 있나요??
이렇게 뜨는데 해결방법을 모르겠습니다 ㅠㅠ그리고버전을 23버전으로 사용했는데공부하는 시점에서 강의에 나오는 3.17로 진행하는건 문제가 없을까요??
-
해결됨20년 경력자의 알기쉬운 컴퓨터네트워크
5-2 질문입니다.
동일하게 설정 했는데, RIPv2 설정이 L3SW2에서는 라우팅 테이블로 잘 보이지만 L3SW1에서는 보이지 않고, PC1과 서버2 <-> L3SW2까지는 통신이 잘 되지만 서버3까지는 통신이 되지 않습니다.이유가 뭘까요...?!
-
해결됨왕초보를 위한 네트워크 기초
회선방식 및 osi 계층 질문 있습니다.
인터넷은 패킷교환 방식으로 통신을 한다고 알고있습니다. 이유는 회선교환방식은 A와 B가 통신을 하는데 끊어지는데 문제가 발생하면 안되기 때문이라고 알고있습니다. 근데 패킷교환방식도 마찬가지 아닌가요? 무슨말이냐 하면1개의 회선에 여러개의 패킷으로 쪼개서 여러사용자가 이용한다고 들었습니다. 근데 이런방식 또한 회선이 끊어지면 통신에 문제가 발생하지 않나요?? osi7계층에서 1 2 3 계층은 장비간의 연결 4 5 6 7 간에는 어플간의 통신이라고 알고있습니다. 그럼 만약에A장비와 B장비가 프로그램이 내장되지 않는 예전 전화같은 장비라면 3계층까지만 필요하고 4 5 6 7 계층은 필요없나요??
-
미해결아두이노와 떠나는 사물인터넷 여행 - 아두이노 입문부터 IoT 중급까지!
엔트리 하드웨어 프로그램 오류
영상에서 처럼 엔트리 하드웨어를 통해 나노 보드를 연결하려고 했습니다. 드라이버 설치는 문제 없는데, 펌웨어 설치에서 하드웨어가 연결되지 않았다고 뜹니다.다른 usb 포트에 연결도 해봤고 전원을 껐다 키기도 했습니다.IDE에서 Blink 예제를 확인하였을 때는 문제없이 uploading 까지 진행되었습니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
포폴용 iocp서버를 배포 하고 싶습니다
포폴용 게임 서버 구성을 위 처럼 하고 싶은데, windows인 IOCP서버 배포에 관해서는 정보가 없어서 가이드를 받고 싶습니다. 게임에 대해 좀 더 구체적으로 말씀드리면회원가입/로그인 등 실시간성이 중요하지 않은 컨텐츠들은 ASP.Net으로 로비동작들을 구현하고실시간 성이 중요한 배구는 IOCP 서버로 소켓 연결해서 게임을 구현하고자 합니다. 위와 같은 구조로 게임 서버를 AWS에서 배포를 한다면 각 asp.net, redis, mysql, windows별로 EC2해서 배포 하는거 말곤 답이 없을까요...?혹시나, 도커를 쓸 수 있다면 혹시 가능하다면 말씀해주시면 감사하겠습니다.🙇♂️
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
클라이언트에서 서버 전향시 연봉 협상
안녕하세요 루키스님! 강의 언제나 잘 보고 있습니다!https://www.inflearn.com/questions/801980/%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8-%EC%BB%A4%EB%A6%AC%EC%96%B4-%EA%B3%A0%EB%AF%BC몇달전에 해당 질문 글을 올리고 빡세게 공부해 서버 면접에 최종 합격했습니다!최종 합격은 한곳만 했고 아직 다른곳은 진행중인 상태입니다.다만 아쉬운점이 연봉 문제로 현재 회사에서 사천 중반 정도를 받고있는데 최종 합격한 회사에서는 연봉을 삼천 후반대로 제시해주시더라구요..서버 신입으로 지원했다보니 어느정도 감봉은 예상했지만 생각보다 액수가 커 고민중인 상황입니다.이정도는 감수하는게 보통일까요?바쁘신데 강의 내용에 관한 질문이 아니라 죄송합니다 ㅠㅠ