묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결그림으로 쉽게 배우는 네트워크
L4, L7 스위치 질문있습니다
L7스위치는 L4 스위치 기능에 더 많은 기능이 탑재되었기 때문에 가격이 비싸다고 하셨는데L4스위치까지의 기능만 하는 스위치가 있나요?L4 스위치에서 데이터를 처리하려면 결국에 L7스위치의 기능도 가지고 있는 스위치 아닌가 해서 의문이 생겨요 결국에 스위치는 하나인데 기능에 따라 L4, L7 스위치 이렇게 나눠부르는 건가요? 아니면 L4 스위치, L7 스위치 이렇게 따로 따로 스위치를 구매할 수 있는건가요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
55강 수업자료 빌드를 하면 이상합니다.
저만 이런건지 뭐가 문제인지 잘 모르겠어요. 줄간 공백이 없어야지 정상일텐데...
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장 문의
안녕하세요. 좋은 강의 감사합니다.학습이 추가로 필요해, 수강 기간 연장 요청 드립니다.감사합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
OnRep 함수 안에서 Authority 체크
7강 실습 중 OnRep_ServerLightColor 함수 내에서 아래 코드와 같이 Authority를 체크하셨는데, OnRep 함수는 클라이언트에서만 실행되는것이 보장되기 때문에 별도의 Authority 체크 없이 클라이언트 사이드 코드를 작성해도 되는 것으로 이해하고 있었습니다.이 경우에는 BeginPlay 서버 쪽에서 명시적으로 OnRep_ServerLightColor() 함수를 호출하고 있기때문에 특별히 Authority를 체크해준 것이고, 기본적으로 OnRep 함수는 클라이언트에서만 호출되는 것이 보장된다고 이해해도 괜찮을까요?
-
해결됨그림으로 쉽게 배우는 네트워크
서브넷 마스크로 IP주소 낭비를 막는 부분 질문드립니다.
서브넷 마스크에 대해 잘 이해가 안가서 질문드립니다. IP를 관리하는 기관에서 IP 클래스를 크게 줄 수 밖에 없어서, 서브넷 마스크로 더 잘게 나눠 IP주소 낭비를 막는다고 설명해주셨는데요. 만약 300개의 IP가 필요한 회사에서 기관에 클래스 C가 부족해서, 클래스 B IP(6만5천개)를 할당받는다고 가정할때서브넷 마스크는 회사의 네트워크 관리자가 관리하니까 클래스 B의 IP를 서브넷팅을 해서 분리하더라도, 할당받은 클래스 B IP는 계속 가지고 있어, 낭비되는거 아닌가요? 서브넷 마스크가 기존 IP 비효율적인 할당을 어떻게 줄일 수 있는지 추가적인 설명 부탁드려봅니다.
-
미해결그림으로 쉽게 배우는 네트워크
[TCP 개요] ack 넘버 설정 질문
TCP 개요 강의 6:09에서 "여러분은 다음과 같은 패킷을 보냅니다" 하면서케이틀린의 ack 넘버가 41(29 + 12)로 설정되는데 42(29+12+1)가 되어야 맞지 않나요?현재 시퀀스 넘버 + 데이터의 크기 + 1을 하는거 아닌가요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 강의 연장 문의
안녕하세요. 해당 강의로 기본적인 AWS 기능을 학습하고 구축하면서 업무에 병행 중에 있습니다. 업무와 병행하다보니... 시간이 많지 않아 강의를 다 보지 못했습니다. 뒷 부분에 학습 하고 싶은 강의 항목이 많아.. 수강 강의 연장이 가능한지 문의드립니다 확인 부탁드립니다. 감사합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
if(NetDriver != nullptr) 부분에 중단점이 걸리지 않습니다.
4강의 void UPendingNetGame::SendInitialJoin() 함수의if ( NetDriver != nullptr) 부분에 중단점이 걸리지 않습니다 (35:06). 혹시 버전이 달라져서 중단점이 걸리지 않게 된 것인가요? 아니면 저 if문에 지금도 중단점 테스트가 유효한가요? (developGame Editor와 DebugGame Editor 둘 다 같은 증상입니다.)
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
실제 Socket 통신을 시도했지만 되지 않습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 영한님, 같이 개발 공부하는 친구와 함께 영한님 예시 코드로 서로 채팅이 되는지 확인하고 싶어 친구의 IP 주소를 받아 서로간 실행을 해보았습니다.통신이 될거란 기대와 다르게 Operation timed out 오류만 뜨게 되었습니다.방화벽 문제인가 싶어 양쪽 컴퓨터의 방화벽을 잠시 끈 상태에서 다시해보아도 같은 오류가 뜨고, 서버쪽 프로그램을 실행하지 않고 클라이언트 프로그램만 실행시켜 connection refuesed 오류를 확인했지만 동일하게 Operation timed out 오류가 떴습니다. 무엇이 문제일까요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
virtual 소멸자 관련 질문
안녕하세요. 부모클래스의 함수를 override 하기 위한 목적으로 부모클래스 함수에 virtual 키워드를 붙여주고 자식클래스가 이 함수구현을 강제하기 위해 virtual 키워드를 사용하는 것으로 이해 했습니다. 하나 이해가 되지 않는 부분은, 소멸자에 virtual 키워드를 붙여주었을때, 부모클래스의 소멸자와 자식클래스의 소멸자가 이름이 다름에도 자식클래스 소멸자를 호출해준다는 것인데, 해당 내용을 Perplexity에 질문해보니 C++ 내부적으로 소멸자를 동일한 이름으로 취급하기 때문이라는 답변을 얻었습니다. 이 내용이 맞는건지 답변 부탁드립니다.감사합니다.
-
미해결이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
Infinity Blade 에셋
안녕하세요, 2:33에서 Infinity Blade 관련 에셋을 마켓 플레이스에서 받으면 된다고 하셨는데, 마켓 플레이스에서 찾기가 어려워 질문을 남깁니다. 혹시 해당 에셋 링크가 있을까요?
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
서버의 응답 포트는 무엇인가요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요.제가 궁금한 점은 서버가 응답을 보낼 때는 어떤 포트를 사용하는가? 입니다.TCP 및 PORT 번호와 관련해 질문 사항이 있습니다.우선 저는 TCP 프로토콜은 고정된 포트로 데이터를 주고 받는 것으로 알고 있는데 서버에서 응답을 보낼 떄, 443으로 응답을 하나요?임시 포트를 할당하여 응답을 하나요?만약 서버가 응답을 보내는 방식이클라이언트 : (임시 포트 A) -> 443서버 : 443 -> (임시 포트 A)클라이언트 : (임시 포트 A) -> 443서버 : (임시 포트 B) -> (임시 포트A)2번과 3번 중 어떤 방식으로 데이터를 통신하나요?만약 서버가 임시 포트를 할당하여 응답을 보낸다면클라이언트가 443으로 요청을 보낼떄마다 3 way Handshake를 진행하나요?최초 TCP 연결 시 클라이언트의 임시포트와 서버의 임시 포트를 연결 하는건가요?이상입니다.
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
4강 14:07 AutonomousProxy 질문있습니다.
14:07에서 플레이어컨트롤러, 캐릭터플레이어가 전부 simulatedProxy 로 출력되었으나 저는 플레이어컨트롤러가 이를 소유함에 따라 AutonomouseProxy로 변해버렸습니다.이것은 현재 5.4 버전에서 정상적인 것인가요?
-
미해결그림으로 쉽게 배우는 네트워크
섹션2. 허브, 스위치, 브리지에 대한 질문
안녕하세요! 수업을 듣다가 궁금한 부분이 있어서 글을 올려봤습니다.허브와 스위치 질문질문허브쪽에는 콜리전 도메인이 크게 하나의 영역으로 표시되었고, 스위치에서는 각 피씨에게 콜리전 도메인이 쌓여져있는 모습을 볼 수 있는데요. 이렇게 표현하신 이유가 있을까요?스위치에 경우에는 mac주소 테이블을 이용하기 때문에 충돌이 일어나지 않아서 콜리전 도메인이 없어야 하는거 아닌가용?각 피씨에 콜리전 도메인이 있다는 의미는 어떤 의미인지 궁금합니다! 스위치 질문제가 이해한 내용입니다! 사진과 같은 경우에서 pc1에서 pc3으로 데이터 보내려고 할 때,hub의 특성 때문에 pc2와 switch에게 데이터가 모두 전송되고, pc2는 본인의 데이터가 아니기때문에 버린다.switch의 경우 첫 통신이기 때문에 mac 주소 테이블에 아무 것도 없고, 데이터를 보낸 pc1의 mac주소를 저장한다.pc3의 mac주소가 switch에 저장되어있지 않기때문에 브로드캐스팅한다. 데이터가 해당되지 않는 pc4는 데이터를 버리고 pc3은 데이터를 처리한다.pc3의 데이터응답을 보내기위해 switch에게 데이터를 보내고, 이때 switch가 pc3의 mac주소를 저장한다.이때 이전에 저장해둔 테이블에 목적지 mac주소가 있는 것이 확인이 되고 브로드 캐스팅 없이, pc1으로 보낸다. 허브에서 받은 데이터응답을 브로드 캐스팅해 pc1에게 전달되고 pc2는 데이터를 버린다.라고 알고 있었는데, 이런 상황이라면 스위치가 아래와 같은 모습일 때 모든 데이터는 switch를 거칠 수밖에 없고 mac주소를 갖게되고, 그렇게되면 무한루프가 생길일이 있을까? 싶었습니다.질문목적지가 all이였기 때문에 이렇게 루프가 생기는 걸까요.?p1에서 데이터를 보낼 때 목적지가 pc4와 같이 고정이라면 루프가 생기지 않는 것이 맞을까요? 브리지에 대한 질문브리지 강의에서 브리지는 소프트웨어적으로 처리, 스위치는 하드웨어적으로 처리하기 때문에 스위치가 훨씬빠르다! 라는 것을 알게 되었습니다.질문소프트웨어적으로 처리한다는 말씀이 Store-and-forwarding방식으로 처리하기 때문에 소프트웨어적으로 처리한다고 말씀해주신걸까요 아니면 다른 방식이 있는걸까요?다른 블로그에서도 브리지는 소프트웨어적으로 처리~ 하고 부연 설명은 따로 없어서 여쭤봅니다 😄😄
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
캐시 최종 수정 정보 스프링에서 이미지 전송시
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]개발자가 직접 구현을 해주어야 할까요? 아니면 자동으로 되는걸까요??
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
채팅서버가 2개일때 서버간 socketManager 공유방법
안녕하세요.해당 강의에서는 채팅 서버가 하나지만만약 채팅서버를 2개 운영한다고 가정했을때 (A.jar, B.jar)배포를 위해 A jar 를 내리고 다시 올릴때 서버가 내려가기전 A jar 의 socket 객체정보를 B jar 로 보내려면 어떤 방법을 사용해야할까요? socket 을 직렬화해서 보내려고 했는데 socket 은 제가 만든 클래스가 아니다보니 Serializable 를 상속받지못해 불가능할것같은데.. 실무에서는 채팅 이중화서버운영 무중단 배포를 어떤식으로 하는지 궁금합니다 ㅠㅠ .. 강의보다 심화된 내용이지만 해당 부분에 대한 지식을 쌓기가 힘들어서 글을 작성하게 되었습니다. 감사합니다.
-
미해결이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
10강의 후반 내용 중 이해안가는 부분이 있습니다.
클라이언트에서 공격 명령을 하여 ServerRPCAttack이 실행되는 코드입니다. 월래는 NetMulticast를 사용해 서버와 모든 클라이언트에서 애니메이션이 실행되도록 패킷을 전달했지만,명령을 내린 클라이언트만 패킷전송을 제외시키기 위해서 다음과 같이 짠건 이해했습니다.하지만 이해가 안 가는 부분이 있습니다. 명령을 내린 클라이언트에 대응하는 (서버상의)액터가 다음 코드를 실행할텐데, 결국 서버상에 있는 클라에 대응하는 액터들은 모두 역할이 [ Authority / AutonomousProxy ] 이거 아닌가요?근데 if문에서 simulatedProxy만 걸러냈다고 말씀하시는 부분이 이해가 안갑니다.
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
3강의 '액터의 접속을 소유하다'라는 표현이 잘 이해가지 않습니다.
3강의 '액터의 접속을 소유하다'라는 표현이 잘 이해가지 않습니다.강의를 반복해 듣고 공식문서를 정독해본 결과 아래와 같이 결론을 내렸는데 혹시라도 틀린 부분이 있다면 정정해주시면 감사할 것 같습니다! ‘액터의 접속을 소유한다’ = ‘액터가 해당 접속에 소유된다’= 액터가 해당 클라이언트(PlayerController)가 소유한 접속에 접근할 수 있는 패밀리에 속하게 된다.
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
SessionManagerV6에서 동시성 컬렉션 사용
public class SessionManagerV6 { private List<SessionV6> sessions = new CopyOnWriteArrayList<>(); public void add(SessionV6 session) { sessions.add(session); } public void remove(SessionV6 session) { sessions.remove(session); } public void closeAll() { for (SessionV6 session : sessions) { session.close(); } sessions.clear(); } }session들을 담는 List로, ArrayList 대신에 동시성 컬렉션인 CopyOnWriteArrayList을 사용하고, 각 메소드에서 synchronized 키워드를 제거하는 방식도 유효한가요?만약 유효하다면, 기존 방식(synchronized )과 새 방식(동시성 컬렉션) 중 어느 방식을 언제 사용하는 것이 적절한가요?
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
9강 30:45 에러가 납니다.
SetIsReplicated(true) 이 구간에서 에러가 계속 발생합니다..SetIsReplicatedByDefault 로 바꾸니 잘 되네요. 왜 이런걸까요?언리얼 버전 5.1 입니다