7. 확장성

17
Scalability 1 7. 확확확 7. 확확확 (Scalability) 7.1 확확확 확확확확 • 1967, Harvard professor Stanley Milgram • 확확확 (2 확 확 ) 확 확확확확 확확확 확확확확 확확확 확확 social hops 확 확확확확 확확 확확 확확 확확확 확확확 - 확확확확 확확확 확확 . • Omaha, Nebraska 확 확확확확 확확확확 확확확 확확확확 160 확 확확확 확확확확 , Bosto n, Massachusetts 확 확확 확확 확확확확확확확 확 확확확 확확확확 확확 확확확확확 . • 확확 - 확확확 확확확확 확확확확 확확확확확 확확확 확확확확 . -확 확확확 확 확확확확확확확 확 확확확 확확확확 확확확 확확확 확확확확 확확확확확 확확확확확 확확 ( 확 , 확확확확확 boston 확 확확확 확확확확 확 확 확확 ). - 확 확확확 확 확확확확확확확 확확확 확 확확 확 확확확 확확 확확확확 확확 확확확확 확 확확확 확확확확 .

description

7. 확장성. 7. 확장성 (Scalability) 7.1 사회적 네트워크 1967, Harvard professor Stanley Milgram 사람들 (2 억 명 ) 을 통과하기 위하여 메시지가 얼마나 많은 social hops 를 갖는지를 알기 위한 미국 내에서 사회적 - 네트워킹 실험을 수행 . Omaha, Nebraska 에 살고있는 무작위로 선택된 사람에게 160 개 편지를 공표하고 , Boston, Massachusetts 에 사는 아는 주식중매인에게 그 편지를 전달하는 것을 요구하였다 . 규칙 - PowerPoint PPT Presentation

Transcript of 7. 확장성

Scalability 1

7. 확장성

7. 확장성 (Scalability)

7.1 사회적 네트워크• 1967, Harvard professor Stanley Milgram• 사람들 (2 억 명 ) 을 통과하기 위하여 메시지가 얼마나 많은 social hops 를

갖는지를 알기 위한 미국 내에서 사회적 - 네트워킹 실험을 수행 .• Omaha, Nebraska 에 살고있는 무작위로 선택된 사람에게 160 개 편지를

공표하고 , Boston, Massachusetts 에 사는 아는 주식중매인에게 그 편지를 전달하는 것을 요구하였다 .

• 규칙- 이름에 기초하여 알고있는 중개자에만 편지를 전달한다 .- 그 편지를 그 주식중매인에게 더 가까이 가져가기 위하여 그러한 중개자는

지능적으로 선택되어야 한다 ( 예 , 지리적으로 boston 에 가까운 누군가를 알 수 있다 ).

- 그 편지가 그 주식중개인에게 도착할 때 까지 그 친구는 같은 방식으로 다른 친구에게 그 편지를 전달한다 .

Scalability 2

7. 확장성

Boston

Omaha

• 42 letters made it !!

• Average of 5.5 hops

• Demonstrated the small world effect’

• Proved that the social network of the United States is indeed connected with a path-length (number of hops) of around 6 – The 6 degrees of separation !

Scalability 3

7. 확장성

7.2 P2P 네트워크

• P2P 네트워크는 사회적 네트워크와 다수의 유사성을 갖는다 .• 사람은 피어일 수 있고 Milgram 의 실험에서 중개자는 P2P 네트워크에서

게이트웨이 , 허브 , 브릿지 또는 랑데부 노드로 볼 수 있다 .• 소스로부터 목적지로 편지를 전달하는데 사용된 중개자의 수는 P2P 망에서

홉의 개수가 될 수 있다 .

7.2.1 P2P 망의 성능• P2P 네트워크의 성능은 비결정적이다 .• P2P 네트워크는 애드 혹 방식으로 자주 구축되고 그것의 성질과 그것의 협력하는

피어들의 일시적인 가용성에 기인하여 , 최적 성능을 갖도록 망을 안정화 시키는 것이 불가능하다 .

• P2P 망의 성능은 정확하게 측정할 수 없다 . 그것은 오히려 다음과 같은 경험적 측정을 포한다 .

• 특별한 파일을 찾는데 얼마나 긴 시간이 걸리는가 ?

Scalability 4

7. 확장성

• 질의가 얼마나 많은 대역폭을 소비하는가 ?• 내 패키지가 네트워크의 반대쪽의 어떤 피어를 도착하기 위하여 얼마나 많은 홉들을 거치는가 ?• 그 네트워크에서 어떤 피어가 추가되거나 제거될지라도 그 망은 아직 결함 포용인가 ?• 많은 피어를 추가로 망은 확장될 수 있는가 ? 그러한 망은 수백 피어에서 수천 또는 수백만 피어로

빨리 확장될 수 있다 .

• P2P 네트워크는 피어들이 끊임없이 연결되고 단절되는 비신뢰적 환경에서 동작한다 .

• 그러한 환경에서 , 네트워크 코어의 끊임없이 재구축을 처리할 수 있는 알고리즘이 필요하다 .

• P2P 네트워크는 성능 저하의 상반관계로 중복성을 촉진하는 방법으로 설계되어야 한다 .

• P2P 망을 성능 문제에 더 민감하게 만드는 3 가지 주요 요소가 있다 .• 통신• 검색• 피어 부하 균등

Scalability 5

7. 확장성

7.3 피어 위상

• P2P 망에서 사용할 수 있는 위상의 종류• Core

• Centralized• Ring• Hierarchical• Decentralized

• Hybrid• Centralized/Ring• Centralized/Centralized• Centralized/Decentralized

Scalability 6

7. 확장성

7.3.1 Centralized

• 통신은 하나의 서버에 직접 연결하는 다수의 클라이언트들로 완전히 집중된다 .• 예 ) 웹 서버 , 데이터베이스 , SET@Home 등

Scalability 7

7. 확장성

7.3.2 Ring

• 점 - 대 - 점 링크로 구성된 물리적 폐쇄 루프이고 집중형 서비스를 분산 서버로 작동하도록 스케일 하는 일반적인 방법이다 .

• 하나의 서버에 동일한 기능을 제공하는 노드의 그룹을 설립하나 중복성 기능과 부하 균등화 기능을 통합한다 .

Scalability 8

7. 확장성

7.3.3 Hierarchical

• 계층적 위상은 트리 - 유사 구조를 가지고 일관된 방식으로 구성된 정보를 통해 극도로 빠른 검색 방법을 제공한다 .

• 예 ) 이진 트리• 가장 잘 알려진 계층적 시스템은 DNS(Domain Name Server) 이다 . 여기서 권한은 루트

네임 서버로부터 등록된 네임에 대한 서버까지 흐르고 3 번째 - 단계 서버까지 자주 내려간다 .

Scalability 9

7. 확장성

7.3.4 Decentralized

• 제어의 하나의 포인터가 없다 .• 피어들은 대칭적으로 통신하고 동등한 역할을 갖는다 .• 예 ) Gnutella• 순수한 분산 네트워크는 랜덤 피어 고장에 대해 아주 결함 포용력이 있으나 가격에서

문제가 생긴다 .

Scalability 10

7. 확장성

7.4 Hybrid 위상

• 피어들은 역할을 일반적으로 바꾸고 복합 위상간의 게이트웨이로서 역할을 한다 .

7.4.1 Centralized/Ring• 강건한 웹 서버들은 부하 균등과 중복성을 위해 서버들의 링을 자주 갖는다 .

Scalability 11

7. 확장성

7.4.2 Centralized/Centralized

• 제어의 중앙 포인트가 있으나 막후 기능들은 하나 또는 그 이상의 다른 서버들에 걸쳐 분산되어진다 .

• 웹 브라우저는 웹 서버와 접촉하고 , 그 웹 서버는 그 요청을 만족시키기 위하여 다수의 다른 노드들과 접촉한다 . 그 웹 서버는 웹 링크의 분산 데이터베이스와 접촉할 수도 있다 .

Scalability 12

7. 확장성

7.4.3 Centralized/Decentrailzed

• 다수의 집중형 시스템들은 분산 방식으로 연결된다 .• 다수의 인기 있는 P2P 파일 - 공유 시스템에 의해 채택되어졌다 .• 파일 공유에서 , 분산 피어를 슈퍼 노드 또는 Gnutella reflector 노드라 한다 . 슈퍼 노드는

연결된 클라이언트들에 대한 캐싱 서버 역할을 한다 .

Scalability 13

7. 확장성

7.5 Napster 와 Gnutella 의 융합

• Gnutella 와 Napster 는 centralized/decentralized 위상으로 융합 되고 있다 .• Gnutella 는 분산 시스템으로 시작되었고 , Napster 는 브로커 통신을 갖는 집중형 검색 구조로 시작되었다 .

• Gnutella 는 슈퍼 피어를 삽입하였고 , Napster 는 확장성을 위해 집중형 검색 엔진을 중복시켰다 . 그 결과 유사한 설계 위상을 가지게 되었다 .

• Gnutella Reflector 는 Gnutella 를 더 확장성 있게 만들기 위하여 설계된 프락시와 인덱스 서비스 ( 연결된 사용자들의 캐시 파일 목록이 인덱스로 관리 )이다 .

F1.mp3 – ID0:F1.mp3

C F1.mp3

F2.mp3

F3.mp3

0

1

2

Scalability 14

7. 확장성

NapsterGnutella

User

Napster.com

Gnutella Super Peers:1. Natural??

2. Reflector (clip2.com)

=

User

Napster

N2

N3

Napster Duplicated Servers

Scalability 15

7. 확장성

7.7 Gnutella 분석

• Gnutella 에서 검색은 모든 연결된 피어들에게 질의 메시지를 방송하는 것을 포함한다 . 각 연결된 피어는 그것의 연결된 피어에게 그것을 전송할 것이다 . 이 검색은 특정 수의 홉 까지 실행될 것이다 .

• 만일 연결된 피어의 개수 , c=3 이고 홉 , h=7 이면 , 완전 연결 망에서 검색된 전체 피어의 개수는 s=c+c2+c3+….

s=3+9+27+81+243+729+2187=3279 Nodes 이다 .

7.7.1 Gnutella Free Riding

• Free riding 의 2 가지 종류1.download files but never provide any files for other to download2.users that have undesirable content

• They found 22,084 of the 33,335 peers in the network (66%) of the peers share no files • 24,347 or 73% share ten or less files • top 1 percent (333 hosts) represent 37 percent of the total files shared • 20 percent (6,667 hosts) sharing 98% of the files

Scalability 16

7. 확장성

7.7.2 Equal Peers?

• Gnutella 의 분석 [Clip2.com]• 질의율이 초당 10번 이상일 때 명백한 측정 가능한 장애• 일반적으로 Gnutella 질의 메시지는 거의 560 비트 길이고 질의는 트래픽의 거의 ¼을 구성

• Gnutella 피어들은 평균 3 개의 원격 피어들과 연결된다고 가정• 560*10*3=16,800 bits per second• 16,800 * 4 = 67,200 bits per second

7.7.3 Power-Law Networks

• Studied topology of Gnutella over several months & reported two findings:1. Gnutella network shares the benefits and drawbacks of a power-law structure

- networks that organize themselves so that most nodes have a few links and a small number of nodes have many

- found to show an unexpected degree of robustness when facing random node failures.

- vulnerable to attacks e.g. by removing a few of the super nodes can have a massive effect on the function of the network as a whole.

2. Gnutella network topology does not match well with the underlying Internet topology leading to inefficient use of network bandwidth.

Scalability 17

7. 확장성

7.10 결론

• Centralized + Decentralized – understand from the original Gnutella to the new models

• The role of Reflector nodes