강의 2:48~ 3-way handshaking에 대해 설명하실 때 오가는 세그먼트에는 페이로드가 없다. IP헤더와 TCP헤더만 있다라고 설명하셨습니다. 세그먼트는 L4에 있는 TCP의 단위인데 어떻게 L3의 IP헤더를 가지고 있나요? 서버측에서 Decapsulation 하는 과정에서 3-way handshaking만 특별하게 세그먼트에 IP헤더를 가져와야 한다고 생각해야 하나요?
안녕하세요 강의 잘 듣고있습니다. ㅎ 강의에서 관리형 노드 그룹, 자체 관리형 노드, AWS Fargate 에 대해서 설명을 주셨는데요. 그래도 선호하시거나 많이 사용하는 방법이 뭔가요 ?? 가령 AWS ECS 에서도 EC2 와 Fargate 가 있는데 , EC2 가 비용이 비교적 저렴하지만 여러 관리 부하 등을 고려했을때 Fargate 를 추천 많이하고 사용하는걸로 아는데요 EKS 는 어떤가요 ?
JobTimer 까지 모두 수강하고 Session쪽 코드에서 RecvBuffer _recvBuffer = new RecvBuffer(1024); 이것만 이렇게 다시 수정했습니다. 그리고 실행시켰는데 메모리가 늘어나더니 저런 오류가 떠서 Console.Writeline 쪽 코드를 지우고 실행시키니까 이렇게 메모리가 계속 늘어나지 않고 일정하게 유지 되는데 단순히 Console.Writeline이 많이 실행돼서 그런건가요?
선생님 안녕하세요! 수업 잘 듣고 있습니다! 질문이 있습니다! 소켓은 커널모드로 진입해 네트워크를 통신하기 위한 추상 인터페이스다, h/w와 소통하기 위해 kernel의 도움을 받아야 하는데 네트워크 통신을 할 때 추상 인터페이스를 부르는 명칭이 소켓인것이고 I/O 장치와 상호작용 할 때는 file이라고 부르는 것이 맞나요?
이 강의를 구매하기 전 이런저런 자료를 찾아보며 혼자 TCP 통신을 공부하고 있었습니다. 그런데 제가 공부할 때는 Begin~() 를 사용했었습니다. 그런데 이 강의 에서는 ~Async() 를 사용하더라고요 사용하기는 Begin~() 이 더 간단하던데 이 강의에서 ~Async() 를 사용하는 다른 이유가 있을까요? 궁금합니다.
안녕하세요. 네트워크 강좌 잘 보고 있습니다. 유익한 강좌에 감사드리며 질문드리겠습니다. 수업 내용 중에 L2 구간에서는 MAC주소로 통신을 하고 인터넷으로 넘어간 순간 L3 통신을 해서 IP주소가 중요해진다고 하셨습니다. 모든 L3 통신도 결국 L2를 거치게 될텐데, L2의 프레임에 들어갈 MAC주소에 대한 정보는 어떻게 처리되길래, IP주소만으로 인터넷 상에서 목적지까지 데이터가 전달되는지 궁금합니다.. 더불어 인터넷이라는게 논리적이라고 말씀하셨는데, 그렇다면 "여기서부터는 인터넷이야"라고 하는게 어떻게 정해지는 것인지.. 인터넷을 구분하는 경계 같은게 어떤식으로 이뤄지는지 궁금하기도 합니다. 감사합니다.
풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
안녕하세요, 섹션 13 마지막 강의에서, 인증서 재발급 이후에 nginx 프록시 서버 컨테이너를 따로 재시작할 필요는 없는건지 질문 드립니다. 볼륨 마운팅이 되어 있기 때문에 nginx가 자동으로 갱신된 인증서를 읽어서 반영하는 건가요? 원리가 궁금합니다. 만약 재시작이 필요한게 맞다면 crontab 명령어는 어떤식으로 변경하면 될까요?
google Protobuf에서 한글을 보낼때는 utf8 형식으로 보내야하는 걸로 알고 있습니다. 그래서 u8을 앞에 붙여서 set_name()에 인자를 넣은거구요. 근데 C++언어 표준을 latest 로 해놓고 하면 google protobuf 쪽에서 char8_t 를 지원을 안해주어 컴파일에서 걸렸습니다.. C++ latest 로 지정하고 u8을 하면 문자열이 const char8_t 로 변환되더라구요. 이전 C++ 17 이전으로는 u8을 해도 const char로 변환되었습니다. 그래서 기존에는 컴파일타임에 걸리지 않고 실행이 된것 같습니다. 그래서 이렇게 u8을 쓰지 않고 converter 를 통해 utf8 로 변환 후 패킷을 보냈습니다. 이렇게 하니까 한글이 정상 출력이 되는 걸 확인했습니다.. 이런 방식도 나쁘지 않은 방식인가요...? 제가 의심을 하는 이유는 codecvt_utf이 deprecated 된 것인데 경고를 무시하는 코드를 넣고 실행을 돌리기 때문입니다. C++ latest 에서 사용하기 위해서는 제가 생각한 최선의 방법이었습니다. 좋은 방법이 있을까요
안녕하세요. 강사님.. 학습과 별개의 질문이긴 한데.. 어디다 문의해야 될지 몰라 여기에 문의 드립니다. "스스로 구축하는 AWS 클라우드 인프라-기본편" 을 구입하여 기본을 익히는데 많은 도움을 받았으며, 인프라 기본편 구매 당시에 "스스로 구축하는 AWS 네트워크" 강의도 있었는데 어느 순간 없어졌더라구요.. 해당 강의가 어떤 구성인지 궁금하기도 하고 인프라 기본편이 너무 만족스러워서 강사님의 네트워크 강의를 통해 좀 더 학습하고자 하는데 혹시 다시 강의를 게시할 계획이 있으신가요? 아니면 다른 대체할 추천해주실 만한 강의가 있는지 여쭤봐도 될런지요? 감사합니다.
안녕하세요 강의 잘 보고 있습니다!! 다름이 아니라 IOCP를 이용하여 언리얼 클라이언트와 연동을 하고 있는데 패킷을 보내는데 의문이 들어서 이렇게 질문을 남깁니다. 클라이언트 코드에서는 타이머를 이용하여 초당 60개의 패킷을 서버로 전송합니다.(서버에 접속이 성공적인 경우에 한해서) 그후 서버에서는 작업자스레드에서 모든 입출력을 처리를 하게 되는데, 만약 클라이언트 수가 많아지면 그만큼 서버에서 모든 클라이언트의 초당 패킷을 처리하게 되므로 과부하가 심해질 것으로 예상이 됩니다. 이에 따라 PQCS함수를 이용하여 저가 자체적으로 UPDATE이벤트를 넣어주어 처리를 하려고 했는데 생각한것처럼 잘 되지가 않아서요.. 아니면 그냥 서버에서 UPDATE쓰레드를 따로 구분지어서 클라이언트에게 브로드캐스트를 하는것이 방법일까요? 어떤 것이 좋을지 감이 안잡혀서 이렇게 질문남깁니다!!
안녕하세요 널널한 개발자님. 우선 질 좋은 강의 제공에 감사인사부터 드립니다. 제목에 작성된 것처럼 2가지 질문이 있어 남깁니다! 질문에 해당하는 강의 제목은 [TCP 연결과정] 입니다. 3-way handshaking 동작을 설명해주시면서 클라이언트, 서버 간에 전달하는 데이터 단위가 Segment이고, 이 Segment 정보에 (데이터가 담긴) 페이로드는 없고 IP, TCP 헤더 정보만 있다고 하셨는데요! 그렇다는 것은 3-way handshaking 동작은 뭔가 클라이언트가 서버쪽으로 데이터를 전달해서 서버에서 로직을 처리하고 응답을 받는 것이 목적이 아닌 단순히 클라이언트가 서버와의 연결이 정상인가를 확인하는 용도이기 때문인 건가요? 그러면 페이로드는 그럼 언제 전달되는 것인지 궁금합니다. TCP 연결 시 랜덤하게 생성한 시퀀스 넘버를 교환하는 것 말고 기타 정책 중 MSS 라는 정보를 전달주신다고 하셨는데요. 그러면서 서버의 MSS가 클라이언트의 MSS 보다 작을 경우, 클라이언트 쪽에서 서버의 MSS에 맞게 축소시켜 전달한다고 하셨는데요! 예를 들어, 클라이언트의 MSS가 1.5KB 이고, 서버의 MSS가 1.4KB 라고 가정해봅니다. 클라이언트 쪽에서 서버의 MSS에 맞게 축소하려고 하는데, 클라이언트가 전달하려는 Segment의 용량이 맥시멈 사이즈인 1.5KB라고 한다면 어쩔 수 없이 용량을 1.4KB로 축소하게 되고, 이 과정에서 데이터 손실?이 발생할 수도 있는 건가요?(질문하다 보니 2번 질문은 3-way handshaking 과정에서 payload 부분이 전달 된다는 가정하에 질문일 수 있겠네요) 질문이 다소 이해가 가지 않으시면 말씀 주세요 감사합니다~
VLAN 내 디폴트 게이트웨이 IP를 해당 VLAN에서 할당 가능한 첫 번째 주소(보통 1)라고 설명해주셨는데요.예를 들어 VLAN 10번의 디폴트 게이트웨이 IP를 200.200.200.1로 지정한다면, 이때 200.200.200.1이 가리키는 물리적 대상은 없고 이것도 가상의(?) 인터페이스인 건가요?디폴트 게이트웨이가 의미하는 것이 라우터이고, 라우터가 하나라면, IP 주소도 동일한 1개여야 할 것 같은데 VLAN마다 IP 주소가 어떤 똑같은 1개로 지정되는 게 아니라, 그 VLAN 내에서 각기 다르게 (X.X.X.1)로 지정되는 게 이해가 안 되어서요. 200.200.200.1이 가리키는 대상이 무엇인가요? 답변 주시면 감사하겠습니다.
강의 중 패킷트레이서 실습 내용에서, 각 장치에 ip를 할당하고 나서야 스위치 맥 테이블에 정보가 노출되는 것을 볼 수 있었는데요.스위치는 MAC 주소를 기반으로 프레임을 전달하기 때문에 IP 주소 할당 여부와 관계없이 연결된 장치의 MAC 주소를 학습할 수 있어야 하는 것이 아닌가요?! ip를 할당하기 전에는 왜 맥 테이블이 비어있었던 건지 궁금합니다.