728x90 개발공부 개발새발127 Network) 서버에 접속하자! 계층 구조 애플리케이션 아랫 부분에는 Socket 라이브러리가 있다. 그 안에는 리졸버가 있다. OS 내부에는 프로토콜 스택이 있다. TCP 와 UDP 라는 프로토콜을 사용해 데이터 송수신 동작을 한다. TCP 브라우저나 메일 등 일반적인 애플리케이션 UDP DNS 서버 조회 등 짧은 제어용 데이터 송수신 IP 프로토콜을 사용해 데이터 송수신을 한다. *패킷을 통신 상대까지 운반하는 역할 *분할된 데이터의 덩어리 ICMP 와 ARP 프로토콜을 다룬다. ICMP 패킷을 운반할 때 발생하는 오류나 제어용 메시지 통지 ARP IP 주소에 대응하는 이더넷의 *MAC 주소 조사 *표준화된 LAN 방식의 기기가 사용하는 형식의 주소 LAN 드라이버 LAN 어댑터의 하드웨어 제어 LAN 어댑터 실제 송수신 동작, 즉.. 2023. 7. 26. Network) Protocol Stack Protocol Stack 액세스 대상 웹 서버에 메시지를 송신하도록 의뢰하는 OS 내부 스택 이 동작은 웹에 한정되지 않고 모든 네트워크 애플리케이션에 해당한다. *DNS 서버를 사용하여 IP 주소를 조사하는 동작도 모든 애플리케이션 공통 프로토콜 스택에 메시지 송신 동작을 의뢰할 땐, Socket 라이브러리 프로그램 부품을 결정한 순번대로 호출한다. 데이터 송,수신 동작을 하기 전에는 양자 사이를 파이프로 연결하는 동작이 필요하다. →파이프 양 끝에 있는 데이터의 출입구를 “소켓” 이라고 부른다. 프로토콜 스택이 소켓 연결 서버측에서 소켓을 만든다. (소켓 작성) 클라이언트 측에서도 소켓을 만들고 서버측에 소켓 연결. (접속) 데이터 송,수신 파이프 분리하고 소켓 말소(연결 끊기) 소켓을 분리할 땐 .. 2023. 7. 25. DNS ) DNS 서버 HTTP 메시지를 만들면, 이것을 OS 에 의뢰하여 엑세스 대상 웹 서버에게 송신한다. 브라우저는 URL 을 해독하거나 HTTP 메시지를 만들지만 송출 기능은 없다. TCP/IP “서브넷”이라는 작은 네트워크를 라우터로 접속하여 전체 네트워크가 만들어진다. 서브넷이란, 허브에 몇 대의 PC가 접속된 것이라고 생각하자. *라우터, 허브는 패킷 중계 장치의 일종 네트워크 번호 동 호스트 번호 번지 이 두 주소를 합쳐서 IP주소라고 부른다. 동작 송신 측이 메시지를 보내면 서브넷 안에 있는 허브가 운반 송신 측에서 가장 가까운 라우터까지 도착 라우터가 메시지를 보낸 상대 확인 후, 다음 라우터 판단하고 보내도록 지시 다시 서브넷 허브가 라우터까지 메시지를 보냄 위의 동작을 반복하면 최종적으로 상대의 데이터가 .. 2023. 7. 25. HTTP) HTTP Request Message 작성 브라우저의 기능 웹 서버에 엑세스하는 클라이언트 파일을 다운로드/업로드하는 FTP 클라이언트 기능 *파일 업로드 다운로드 프로토콜 메일 클라이언트 → 웹 서버에만 엑세스하는 것은 아님, 복합적인 클라이언트 소프트웨어 *URL 맨 앞 문자열에는 액세스하는 방법이 적혀있다. file: 로 시작하는 URL 처럼 네트워크 사용하지 않는 것도 있으니 프로토콜을 나타낸다고 단정지을 수는 없음. 브라우저는 먼저 웹 서버에 보내는 리퀘스트 메시지를 작성하기 위해 URL을 해독한다. http://www.alwaysalsoholiday.com/ “/” 라는 디렉토리에 엑세스 http://www.alwaysalsoholiday.com 디렉토리 명을 생략하면 default.html 또는 index.html 이라는 이름의 파일.. 2023. 7. 25. JAVA ) GC & JVM GC (Garbage Collection) 이란 ? 안 쓰는 메모리를 알아서 정리해준다. 그건 어떤 메모리인가요? Null 선언된, 가리키는 주소(참조)가 없어진 객체. 실행되는 과정 Stop The World 가비지 컬렉션이 동작하기 위해 JVM이 애플리케이션 실행을 멈춘다. GC 실행 쓰레드를 제외한 모든 쓰레드가 작업을 중지한다. Mark And Sweep Mark : 사용되지 않는 메모리를 식별한다. Sweep : 식별한 메모리를 제거한다. 특징 Java는 GC가 직접 메모리 관리를 해줘서 편리하다 다만 GC가 따로 돌아가는 과정이 추가돼서 좀 느리다. *그래서 게임 서버 같은 경우는 직접 메모리를 해제하는 C/C++ 등의 언어를 사용한다. JVM (Java Virtual Machine) 이란 ?.. 2023. 7. 21. 배웠던 것을 정리하는 그런 notion 을 작성했다면 믿으시겠습니까 ? https://hyuil.notion.site/d82101c4cb2b40668fc69920193831cd?v=15b18f7b549542309b7a0f1fc89b8251&pvs=4 Study공부한 내용들입니다.hyuil.notion.site* 주소 수정됨 ㅎㅎ 내가 이력서에 안다고 적어놨던 것들이 사실 애매하게 아는 것들도 많았던 것 같아서면접 준비용으로 정리하고 있는 건데이렇게 모르는 걸 찾아보고 정리하고 ~ 또 남들한테 알려주고 이런 게 넘넘 재밌당ㅎㅎ어제 클라우드도 그렇긴 했는데~ 아까 AOP에 대해서 정리하다가 내가 확실하게 모르는 것 같아서 토비의 스프링을 다시 읽어봤는데" 아 맞아~ 이런 개념이었지! " 하면서 몬가 가슴이 끓어오르고 뿌듯하더라.이론 공부를 하는 건 엄청엄청 재밌는 고런 것이었던.. 2023. 7. 17. 이전 1 ··· 11 12 13 14 15 16 17 ··· 22 다음 728x90