[JAVA] Networking

정은아·2022년 8월 19일
0
post-custom-banner
. Networking(네트워킹)

: Networking이란 두대 이상의 컴퓨터를 케이블로 연결하여 Network를 구성하는 것을 말한다.

  네트워킹의 개념은 컴퓨터들을 서로 연결하여 데이터를 손쉽게
  주고 받거나 또는 자원(프린터기와 같은 주변기기)을 함께 공유하고자하는 노력에서 시작되었다.
  
  지금은 전 세계의 수많은 컴퓨터닥 인터넷이라는 하나의 거대한 네트워크를 구성하고
  있으며 인터넷을 통해 다양하고 방대한 데이터를 공유하는 것이 가능해 졌습니다.
  
  자바에서 제공하는 java.net 패키지를 사용하면 이러한 네트워크 애플리케이션을
  쉽게 작성할 수 있으며, 간단한 네트워크 어플리케이션은 단 몇 줄의 자바코드로
  작성이 가능합니다.
  
  
  . Client    / Server   (클라이언트/서버)
  
  : 클라이언트 서버는 컴퓨터간의 관계를 역할로 구분하는 개념입니다.
  
    Server는 서비스를 제공하는 컴퓨터이고
    Client는 서비스를 사용하는 컴퓨터입니다
  
   일반적으로 Server는 다수의 클라이언트에게 서비스를 제공하기 때문에
   고 사양의 컴퓨터를 갖춘 컴퓨터이고 하드웨어의 사양으로 서버와 클라이언트를
   구분하는 것이 아니기 때문에 하드웨어 사양에 관계없이 서비스를 제공하는 
   소프트웨어가 실행되는 컴퓨터를 서버라고 합니다.
   
   

. TCP / IP 프로토콜

: 인터넷은 TCP/IP 프로토콜을 사용하고 있습니다.
  프로토콜은 다양한 네트워크 장치들이 서로 데이터를 교환할 수 있도록 해주는 일종의 약속입니다.
  
  . Protocol(프로토콜)  : 원격지에 있는 Host 상호간에 정확하고 효율적으로
                        데이터를 전송하는데 필요한 모든 약속
  . Host(호스트)       : 네트워크에 연결된 컴퓨터를 의미
  
  
  
  TCP/IP 계층 구조
  
  : 1977년 국제 표준화기구(ISO : International  Standards Organization)는
    서로 다른 서비스간의 원활한 통신을 위해 OSI(Open System Interconnection) 7계층
    이라는 프로토콜 표준을 제정하였습니다. 이 프로토콜은 통신을 위한 표준적인 방법을 제시하고, 
    기존 표준과의 관계 및 향후 개발되는 표준과의 관계를 명확히 하기 위해 개발되었습니다.
    
    OSI 7 계층
       . 응용 계층(Application Layer)
       . 표현 계층(Presentation Layer)
       . 세션 계층(Session Layer)
       . 전송 계층(Transport Layer)
       . 네트워크 계층(Network Layer)
       . 데이터 링트 계층(Data Link Layer)
       . 물리 계층(Physical Layer)
    
    
    TCP/IP 프로토콜의 종류
    
    : 전화 통화를 하기 위해서는 상대방의 전화 번호를 알고 있어야 합니다.
      또한 상대방의 전화번호가 중복되지 않고 유일한 번호일 경우에만 정상적인
      통화를 할 수 있습니다. 마찬가지로 컴퓨터 통신에서도 상대방의 정확한 주소를 
      알고있어야 합니다.
      IP(Internet Protocol) 주소는 이러한 고유번호를 전세계 컴퓨터에 부여한 것입니다.
      
      IP가 부여된 컴퓨터와 통신을 하기 위해서는 반드시 상대방의 IP주소를 알고 있어야 합니다.
      예를 들어 썬 시스템사를 방문하고 싶다면 이 회사의 IP주소(192.18.97.7)을 알고 있어야 합니다.
      하지만 숫자를 외우는 것은 너무 어렵기 때문에 Java.sun.com이라는 도메인 네임을 통해 쉽게 접근할 수 있습니다.
      
    : TCP/IP 전송 계층은 연결형인 TCP(Transmission Control Protocol)와 
                      비연결형인 UDP(User Datagram Protocol)로 구성되어있습니다.
 
    : TCP와 UDP 모두 Packet(데이터 전송 단위)단위로 전송됩니다.
     
     
                            TCP방식              UDP방식
      
  연결방식                  연결 지향적            비연결 지향적
  
  신뢰성                       O                     X         
             
  네트워크 부하                 많은                  적음
  
  사용 예               FTP, TELENT SMTP,          대용량 미디어 파일에 적용
                       POP3, HTTP
                      
    : 자바는 네트워크 프로그램을 작성하는데 필요한 java.net패키지를 제공합니다.
       java.net패키지는 다음과 같은 클래스로 구성되어 있습니다.
       
       
       클래스 종류                 기능
       InetAddress            IP주소를 처리하는 기능
       URLConnection          URL을 처리하는 기능
       ServerSocket           TCP를 처리하는 기능
       Socket                 
       
       DatagramPaacket        UDP를 처리하는 기능
       DatagramSocket
       
       
       
 . IP(Internet Protocol)
       
 : 상호 연결된 네트워크를 통해 데이터를 전송하는데 필요한 기능을 제공합니다.
   IP 프로토콜은 네트워크 계층에 속하고, 호스트의 주소 지정과 패킷 생성 기능을 
   제공합니다. 즉 수신지로 데이터를 전달하는 작업만 처리합니다.
   데이터를 전송하기 위해 IP주소를 사용합니다.
         
 . V4
 : 32비트를 8비트씩 4부분으로 나누고 각 부분을 . 으로 구분해 각각을 10진수로 나타냅니다.
   
    210.94.123.35
          
 : IP주소는 네트워크 부분과 호스트 부분으로 구성됩니다.
   네트워크 부분은 호스트가 포함되어 있는 네트워크 식별자로 사용되고
   호스트 부분을 특정 호스트를 식별하는데 사용됩니다.
profile
꾸준함의 가치를 믿는 개발자
post-custom-banner

0개의 댓글