Gentoo Archives: gentoo-soc

From: Kostyantyn Ovechko <fastinetserver2@×××××.com>
To: gentoo-soc <gentoo-soc@l.g.o>
Subject: [gentoo-soc] Project IDFetch - Weekly report #6 ("Network/Connection Management")
Date: Wed, 07 Jul 2010 05:56:49
Message-Id: 1278482192.24939.210.camel@monapc
1 -=====================================================================-
2 -Project IDFetch - Weekly report #6 ("Network/Connection Management") -
3 -=====================================================================-
4
5 Amway, Oriflame, Mary Kay ... looks like the whole world is covered with
6 these networks. I don't mind network marketing [1], but in most cases
7 network brokers so eager to cover all of your needs, that probably you
8 don't even have a chance to buy from the others or even from a local
9 place [2]. Trying to impose limits on your connections with network
10 brokers doesn't really work - they already know how to get you via your
11 cell phone, LAN and in some cases even the address you are bound to[3].
12
13 Although, sometimes i'd like to provide something myself [4], but
14 mostly it's getting extremely annoyinggggggggg. Hopefully development of
15 Network/Connection Management System [5] will mitigate at least some of
16 these problems.
17 We'll see...
18
19 From IDFetch project timeline [5]:
20 Fetchers-Connection-Manager will allow fetcher to manage multiple
21 connections, in order to increase throughput, and prevent downloads via
22 some network connections ( e.i. to prevent connection via cell-phone,
23 when you pay for the traffic).
24
25 Progress on IDFetch project
26 ===========================
27 Development of Network/Connection Management System resulted in adding
28 the following options to the segget's configuration files:
29
30 ----------------- Added to segget.conf file -----------------
31
32 [networks]
33 # NETWORK0_PRIORITY
34 # Define priority as a value in range from lowest 0 to highest 10.
35 # Segget tries to use networks with higher priority levels first, and in
36 # case of failure will switch to networks with lower priority levels.
37 # Segget will NOT use network if its priority level set to 0. Therefore
38 # at least one network must have priority level higher than 0.
39 # Networks with local mirrors usually would have higher priority than
40 # that of networks with remote mirrors.
41 # Segget can have up to 10 networks (from network0 to network9).
42 # Settings for each network should be defined in network#.conf file,
43 # where instead of # should be a network number.
44 # For network0 it's network0.conf
45 # Default:
46 # network0_priority=10
47 # network1_priority=0
48 # network2_priority=0
49 # network3_priority=0
50 # network4_priority=0
51 # network5_priority=0
52 # network6_priority=0
53 # network7_priority=0
54 # network8_priority=0
55 # network9_priority=0
56 network0_priority=10
57
58 [provide_mirror_to_others]
59 # PROVIDE_MIRROR_DIR
60 # Define a dir for making symlinks to downloaded distfiles. This dir can
61 # be used to provide local mirror for other hosts (with help of Apache,
62 # vsftp, etc).
63 # If set to none, segget will not make symlinks.
64 # Default:
65 # provide_mirror_dir=none
66 provide_mirror_dir=./provide_mirror_dir
67
68 # SYNOPSIS: PROVIDE_MIRROR_FILES_RESTRICT_LIST_ON= 0 | 1
69 # If PROVIDE_MIRROR_DIR=none this option will be ignored.
70 # - If set to 1, segget will compare distfile name with the list of
71 # forbiden patterns from the restricted.conf file. If distfile name
72 # contains any of the patterns, no symlink will be provided to this
73 # distfile.
74 # Default:
75 # provide_mirror_files_restrict_list_on=0
76 provide_mirror_files_restrict_list_on=1
77
78 ----------------- Added to network#.conf files -----------------
79
80 [network_mirrors]
81 # SYNOPSIS: NETWORK_USES_OWN_MIRROR_LIST_ONLY_ON=0 | 1
82 # - If set to 1, segget will replace mirror list provided by portage
83 # system with the list from network0_mirrors.conf file
84 # - If set to 0, segget will use ONLY mirror list provided by portage
85 # system, and will NOT use the list from network0_mirrors.conf file
86 # In some cases it's necessary to make segget prefer local mirrors over
87 # the remote ones. For this purpose define settings for 2 networks:
88 # settings for network0 (to provide access to local mirrors),
89 # settings for network1 (to provide access to remote ones).
90 # 1) Set the following options in segget.conf file:
91 # [networks]
92 # network0_priority=10
93 # network1_priority=9
94 # As you can see network0 (with local mirrors) has higher priority than
95 # network1 (with mirrors provided by portage).
96 # 2) Set NETWORK_USES_OWN_MIRROR_LIST_ONLY_ON=1 in network0.conf file.
97 # 3) Create network0_mirrors.conf file with the list of your local
98 # mirrors.
99 # For example, network0_mirrors.conf may look like this:
100 # http://192.168.210.12/
101 # ftp://192.168.210.205/
102 # http://192.168.210.56/
103 # 4) Set NETWORK_USES_OWN_MIRROR_LIST_ONLY_ON=0 in network1.conf file,
104 # so segget will use remote mirrors working via this network.
105 # NOTE: Actually network0 and network1 can be the same LAN with only
106 # one ip address set on the host. The only difference is that in case of
107 # network1 segget will have to use a gateway to access remote mirrors.
108 # Default:
109 # use_own_mirror_list_only_on=0
110 use_own_mirror_list_only_on=0
111
112 # SYNOPSIS: ONLY_LOCAL_WHEN_POSSIBLE=0 | 1
113 # If NETWORK_USES_OWN_MIRROR_LIST_ONLY_ON=0 this option will be ignored.
114 # - If set to 1, segget will not use remote mirrors with equal or lower
115 # priority until all mirrors in network#_mirrors.conf file have failed.
116 # - If set to 0, segget will use remote mirrors with equal priority or
117 # mirrors with lower priority when this network has NO free connections
118 # (see option NETWORK_MAX_CONNECTIONS in [network_connections] section
119 # of this file).
120 # NOTE: Following example for NETWORK_USES_OWN_MIRROR_LIST_ONLY_ON
121 option,
122 # if in network0.conf has option ONLY_LOCAL_WHEN_POSSIBLE=1, segget
123 # will NOT start to use network1 for a particular distfile until all
124 # mirrors specified in network0_mirrors.conf file will have failed
125 # to provide this distfile.
126 # On the other hand if ONLY_LOCAL_WHEN_POSSIBLE=0 segget will start
127 # to use network1 as soon as NETWORK_MAX_CONNECTIONS limit, set
128 # in network0.conf file has been reached.
129 # Default:
130 # only_local_when_possible=1
131 only_local_when_possible=1
132
133 ------------- Moved from segget.conf to network#.conf files ------------
134
135 [network_bind]
136 # BIND INTERFACE / IP
137 # Pass a string as parameter. This sets the interface name to use as
138 # outgoing network interface. The name can be an interface name, an IP
139 # address, or a host name. No binding is set by default.
140 # Default:
141 # bind_interface=none
142 bind_interface=none
143
144 # BIND LOCALPORT
145 # Pass a long. This sets the local port number of the socket used for
146 # connection.
147 # This can be used in combination with BIND_INTERFACE and you are
148 # recommended to use BIND_LOCALPORTRANGE as well when this is set.
149 # Valid port numbers are 1 - 65535.
150
151 # BIND_LOCALPORTRANGE
152 # Pass a long. This is the number of attempts segget should make to find
153 # a working local port number. It starts with the given BIND_LOCALPORT
154 # and adds one to the number for each retry. Setting this to 1 or below
155 # will make segget do only one try for the exact port number. Port
156 # numbers by nature are scarce resources that will be busy at times so
157 # setting this value to something too low might cause unnecessary
158 # connection setup failures.
159
160 [network_connections]
161 # NETWORK_MAX_CONNECTIONS
162 # Define maximum number of connections
163 # Minimum value: 1
164 # Maximum value: 20
165 # Default:
166 # max_connections=10
167 max_connections=2
168
169 # CONNECTION_TIMEOUT
170 # Set the number of seconds to wait while trying to connect. Use 0 to
171 # wait indefinitely. Pass a long. It should contain the maximum time in
172 # seconds that you allow the connection to the server to take. This
173 # only limits the connection phase, once it has connected, this option
174 # is of no more use. Set to zero to disable connection timeout (it will
175 # then only timeout on the system's internal timeouts). See also the
176 # TIMEOUT option.
177 # Minimum value: 1
178 # Maximum value: 1000
179 # Default:
180 # connection_timeout=15
181 connection_timeout=15
182
183 # FTP_RESPONSE_TIMEOUT
184 # Set a timeout period (in seconds) on the amount of time that the
185 # server is allowed to take in order to generate a response message for
186 # a command before the session is considered hung. While awaiting for a
187 # response, this value overrides TIMEOUT. It is recommended that if
188 # used in conjunction with TIMEOUT, you set FTP_RESPONSE_TIMEOUT to a
189 # value smaller than TIMEOUT.
190 # Minimum value: 1
191 # Maximum value: -1 (for no limit)
192 # Default:
193 # ftp_response_timeout=180
194 ftp_response_timeout=180
195
196 # TIMEOUT
197 # maximum amount of time to download segment in seconds
198 # Set the maximum number of seconds for a connection to execute.
199 # Pass a long as parameter containing the maximum time in seconds that
200 # you allow the transfer operation to take. Normally, name lookups can
201 # take a considerable time and limiting operations to less than a few
202 # minutes risk aborting perfectly normal operations.
203 # Minimum value: 100
204 # Maximum value: -1 (for no limit)
205 # Default:
206 # timeout=500
207 timeout=500
208
209 # LOW_CONNECTION_SPEED_LIMIT
210 # Define the low speed limit for connection. Pass a long as parameter.
211 # It contains the transfer speed in bytes per second that the transfer
212 # should be below during LOW_CONNECTION_SPEED_TIME seconds to consider
213 # it too slow and abort.
214 # Minimum value: 1
215 # Maximum value: -1 (-1 for no limit)
216 # Default:
217 # low_connection_speed_limit=1000
218 low_connection_speed_limit=1000
219
220 # LOW_CONNECTION_SPEED_TIME
221 # Pass a long as parameter. It contains the time in seconds that the
222 # transfer should be below the LOW_CONNECTION_SPEED_LIMIT to consider
223 # it too slow and abort.
224 # Minimum value: 1
225 # Maximum value: 600
226 # Default:
227 # low_connection_speed_time=10
228 low_connection_speed_time=10
229
230 # MAX_CONNECTION_SPEED
231 # If a download exceeds this speed (counted in bytes per second) on
232 # cumulative average during the transfer, the transfer will pause to
233 # keep the average rate less than or equal to the parameter value.
234 # Defaults to unlimited speed.
235 # Minimum value: 1
236 # Maximum value: -1 (-1 for no limit)
237 # Default:
238 # max_connection_speed=0
239 max_connection_speed=3000
240
241 [network_user_data]
242 # USER_AGENT
243 # Set the User-Agent: header in the http request sent to the remote
244 # server.
245 # This can be used to fool servers or scripts.
246 # Default:
247 # user_agent=segget
248 user_agent=segget
249
250 [network_proxy]
251 # PROXY_IP_OR_NAME
252 # Specify a proxy to use (address and port).
253 # Set HTTP proxy to use. The parameter should be a string holding the
254 # proxy host name or dotted IP address. To specify port number in this
255 # string, append :[port] to the end of the host name. The proxy string
256 # may be prefixed with [protocol]:// since any such prefix will be
257 # ignored. The proxy's port number may optionally be specified with the
258 # separate option. If not specified, by default port 1080 will be used
259 # for proxies.
260 # When you tell segget to use an HTTP proxy, segget will transparently
261 # convert operations to HTTP even if you specify an FTP URL etc.
262 # Segget respects the environment variables http_proxy, ftp_proxy,
263 # all_proxy etc, if any of those are set. The PROXY option does however
264 # override any possibly set environment variables.
265 # Default:
266 # proxy_ip_or_name=none
267 proxy_ip_or_name=none
268
269 # PROXY_PORT
270 # Set the proxy port to connect to unless it is specified in the PROXY
271 # option.
272 # Minimum value: 1
273 # Maximum value: 65535
274 # Default:
275 # proxy_port=3128
276 proxy_port=3128
277
278 # PROXY_USER
279 # Set user name to use for the transfer while connecting to Proxy.
280 # The PROXY_USER option should be used in same way as the PROXY_PASSWORD
281 # is used.
282 # In order to specify the password to be used in conjunction with the
283 # user name use the PROXY_PASSWORD option.
284 # Default:
285 # proxy_user=none
286 proxy_user=none
287
288 # PROXY_PASSWORD
289 # Set password to use for the transfer while connecting to Proxy.
290 # The PROXY_PASSWORD option should be used in conjunction with
291 # the PROXY_USER option.
292 # Default:
293 # proxy_password=none
294 proxy_password=none
295
296 # SYNOPSIS: proxy_off=0 | 1
297 # Setting the proxy_off=1 will explicitly disable the use of a proxy,
298 # even if there is an environment variable set for it.
299 # Default:
300 # proxy_off=1
301 proxy_off=1
302
303 [1]http://en.wikipedia.org/wiki/Multi-level_marketing
304 [2]http://idfetch.isgreat.org/_content2/segget_doc.html#mirrors
305 [3]http://idfetch.isgreat.org/_content2/segget_doc.html#network_bind
306 [4]http://idfetch.isgreat.org/_content2/segget_doc.html#provide_mirror_to_others
307 [5]http://idfetch.isgreat.org/index.php/timeline

Attachments

File name MIME type
signature.asc application/pgp-signature