Changelog:
191 Final
全面代码清理及优化
进一步降低eMule的cpu及内存占用
将Download.txt文件放置入config文件夹
Unicode相关优化 - Borschtsch
修正PartFile.cpp中的一个小错误
修正服务器界面的一个刷新问题 - moloko+
加入Vagaa检测代码 - Enig123, zz_fly
加入新xunlei检测 - Enig123, zz_fly
解决随机选择算法请求人数少时容易造成LowID的RandCS过度膨胀问题 - Enig123
修正算法漏洞,当选用随机选择算法时,自动上传整块 - Enig123
当对方主动cancel时,仅减少并分配与其所得到上传量相匹配的RandCS - Enig123
加入UDPReaskSecurityCheck - NetFinity
加入未完成/损坏文件导入功能 - SR13-Import-Parts by roversr13
修正几处中文化问题
加入并修正skip High-CPU-Load,可使eMule在cpu被其它程序占用时表现更平稳 - Xman1, Enig123
加入上传缓存增强(Improved Upload Caching) - 采用NetFinity的方案
加入是否快完成判断以减少上传缓存增强造成的读盘浪费 - Enig123
加入Advanced Download Throttling,以精确控制下载限制 - NetFinity
修正并优化EMSocket中一些代码
修正CriticalPacketFix
加入完成百分比显示 - Xman1, Enig123
针对UploadBandwidthThrottler.cpp的浮点运算优化为等效的整数运算,可降低大管子的cpu占用 - Enig123
191 Beta1
更新上传选择算法,使randCS的重分配更加精细化
鉴于Xtreme停止更新,CN版简化了anti-leech系统,改写并增强了部分功能
加入UDP FileReask ban
加入Fake Client ban (来源于Argos)
重写限制范围的64位随机数产生程序,使其在64位以内无上限限制
更新了ACAT的UPnP代码,同时保留原来的调用接口
优化part.met文件备份和恢复的停电保护功能,使正常情况下下载文件加载速度不受影响
修正上传选择算法当客户以LowID身份被选中,之后变为HighID无法直接得到上传的bug
修正GetPayloadInBuffer()中的一个溢出错误
加入ACAT的上传partstatus代码优化
改变ModVer的实现方式
加入Unknown Protocol Tags功能
修正ip2c当无法加载数据库时可能崩溃的bug
优化clients.met备份和恢复,使其也具备停电保护功能
加入CTag和TitleMenu优化(来源于Avi-3k)
Dev Changelog
Note: This version is based on 0.49a BETA1 code
13, Apr. 2008
Stripped PeerCache code and UPnP official implementation
Tagged as
Enig123::Strip PeerCache code
Enig123::Strip UPnP official code
14, Apr. 2008
Implemented ACAT's UPnP
Tagged as CN_FEATURE_UPNP
Implemented better pseudo-random number generator named Mersenne Twister
Tagged as CN_FEATURE_UNIFIEDPRNG
Implemented feature of ACAT License statistics
Tagged as CN_FEATURE_ACATLICENSE
15, Apr. 2008
Better .part.met file backup and recovery
Tagged as Enig123::better .part.met file backup and recovery
Changed codes in: DownloadQueue.cpp PartFile.cpp
New Speed Calculation System, which is originally coded by ACAT, modified by Enig123
Tagged as Enig123::ACAT SpeedMeasurer
Threadsafe fix of EMSocket
Tagged as Enig123::WiZaRd::ThreadSafe FiX
Changed code in: EMSocket.h EMSocket.cpp ListenSocket.cpp
Some slite changes in EMSocket.cpp by ACAT
Tagged as ACAT
ACAT slot open logic
partially Tagged as Enig123::ACAT slot open logic
16, Apr. 2008
Optimization - Prevent client from trying to add req block when not in upload slot
Tagged as Enig123::Prevent client from trying to add req block when not in upload slot
Changed code in: ListenSocket.cpp
Fix? - Fafner: error? (GetIP() doesn't always seem to work) - 070920 [from MorphXT CVS]
Tagged as Enig123::Fafner: error? (GetIP() doesn't always seem to work) - 070920
Changed code in: ClientList.cpp
Download Part of Fix Connection Collision, by SiRoB from MorphXT mod
Tagged as Enig123::MORPH - Added by SiRoB, Fix Connection Collision
Changed code in: updownclient.h BaseClient.cpp DownloadClient.cpp
Note: Upload part of Fix Connection Collision is kind of buggy and of little use,
so I decided to drop it.
17, Apr. 2008
count tcp overhead from download, from MorphXT CVS
Tagged as Enig123::MORPH count tcp overhead from download
Modification: Use a seperate locker for this
Changed code in: UploadBandwidthThrottler.h UploadBandwidthThrottler.cpp EMSocket.cpp
Remove file creation for Beta testing
Changed code in: SharedFileList.cpp
Disable a message box for beta version
Changed code in: DestroySplash() method of eMuleDlg.cpp
Fix: get correct standby status of uploading client with ACAT's slot focus code
Tagged as Enig123::correct standby status
Changed code in: UploadBandwidthThrottler.cpp
18, Apr. 2008
Fix: Some uploading client won't send reqblocks for a long time and still stay connectted
which forms a so called 0-uploadsocket
Note: idea from Xman1, new solution by Enig123
Tagged as: Enig123::anti 0-uploadsocket
Changed code in: updownclient.h BaseClient.cpp ListenSocket.cpp UploadQueue.cpp UploadClient.cpp
19, Apr. 2008
Fix: lupzz sleep mod patch
Tagged as Enig123::lupzz sleep mod
Changed code in: UploadBandwidthThrottler.cpp
Note: this change dropped on 20, Apr. 2008
20, Apr. 2008
Optimization: save 80 bytes for each client credit instance
Tagged as: Enig123::ACAT optimization
Changed code in: ClientCredits.h ClientCredits.cpp
UPnP code updated to latest ACAT code without interface change
Changed code in: ./UPnP/UPnP.h ./UPnP/UPnP.cpp
Introduced large socket buffer patch partly from zz's ZZUL mod
Changed code in: EMSocket.h EMSocket.cpp
22, Apr. 2008
Optimization: Xman Code Improvement for choosing to use compression
Tagged as: Enig123::Xman Code Improvement for choosing to use compression
Changed code in: AbstractFile.h AbstractFile.cpp UploadClient.cpp
23, Apr. 2008
Fix: by WiZaRd -
http://forum.emule-project.net/index.php?showtopic=135386Tagged as: Enig123::WiZaRd fix -
http://forum.emule-project.net/index.php?showtopic=135386Changed code in: UploadQueue.cpp
24, Apr. 2008
Fix?: by WiZaRd -
http://forum.emule-project.net/index.php?showtopic=127629Changed code in: DownloadQueue.cpp
Fix: small one by WiZaRd -
http://forum.emule-project.net/index.php?showtopic=135565Tagged as Enig123::fix by WiZaRd -
http://forum.emule-project.net/index.php?showtopic=135565Changed code in: PartFile.cpp
25-27, Apr. 2008
ACAT's fastend + Drop stalled download
Tagged as Enig123::ACAT new fast end
Enig123::netfinity: Drop stalled downloads
Changed code in: PartFile.h PartFile.cpp DownloadClient.cpp updownclient.h ListenSocket.h
28, Apr. 2008
Enig123's randQueue implementation (with randCS)
Tagged as Enig123::randQueue
Changed code in: ClientCredits.h ClientCredits.cpp updownclient.h UploadClient.cpp UploadQueue.cpp
1, May 2008
Updated to BETA2 code
don't allow minSessionUpload less than 9600
Tagged as // don't allow minSessionUpload less than 9600
Changed code in: Preferences.cpp PPgTweaks.cpp
8, May 2008
Minor overflow fix in updownclient.h @ GetPayloadInBuffer()
10, May 2008
Added Xman Anti-Leecher-Log
keyword: Xman Anti-Leecher-Log
11, May 2008
move uploadinglist and waitinglist from public to private in uploadqueue.h
Tagged as: Enig123::waitinglist as private member of uploadqueue
Changed code in: UploadQueue.h WebServer.cpp
16, May 2008
ACAT's Upload PartStatus optimization
Tagged as: Enig123::ACAT partstatus optimization
Changed code in: updownclient.h UploadClient.cpp BaseClient.cpp PartFile.cpp KnownFile.cpp
MorphXT - Optimization requpfile
Tagged as: Enig123::MORPH - Added by SiRoB, Optimization requpfile
Changed code in: updownclient.h BaseClient.cpp QueueListCtrl.cpp SharedFileList.cpp
SharedFileList.h UploadClient.cpp UploadQueue.cpp UploadListCtrl.cpp
17, May 2008
Mod Version
Tagged as: Enig123::Mod Version
Inspired by MorphXT code base
Key Variables added: m_strModVersion - to add ModTag, Formatted as, e.g., CHN 6.189
m_strModVersionCn - to add as NickName, Formatted as, e.g., CN-6.0 Build 189
Ex KeyWords: Maella -Support for tag ET_MOD_VERSION 0x55-
Xman ModID
Anti ModID Faker
Changed code in: eMule.h eMule.cpp BaseClient eMuleDlg.cpp
Added File: ModVersion.h ModVersion.cpp
18, May 2008
trying to add antileecher feature from start
a lot of changes
19, May 2008
X-Ray :: FiXeS :: Exploitfix :: WiZaRd
X-Ray :: Argos - Don't accept upload from banned clients, they may send corrupt data
Changed code in: ListenSocket.cpp
20, May 2008
Add Nick-thief detect to leecherprot function, some bug fixes
21, May 2008
Add display mod-tag in Queuelist, Uploadlist, Downloadlist, Sourcelist and Knownclientlist
Fixed sort bug with Queuelist display of previous CN version
Fixed several display bugs bring by the feature of randQueue
22, May 2008
Fixed an official bug that may cause trouble when the remote client mod tag changed
Tagged as: Enig123::mod tag change bugfix
Related variables: bMod, strModVersion, bModChanged
Changed code in: BaseClient.cpp
Unknown Protocol Tags - originally by BlueSonicBoy in TK4 mod
Note: needed for new clientdetail window
Tagged as: Enig123::Unknown Protocol Tags
IP2Country Added
version updated to CN-7 Build 191
RedesignedClientDetailDlg Added (originally designed by BlueSonicBoy)
Tagged keywords: RedesignedClientDetailDlg
23, May 2008
Add text show of lowid/highid in RedesignedClientDetailDlg window
original interface is hard to identify (by color?)
move condition of Loading ip2c from ip2country.cpp to PPgTweaks.cpp
use int instead of an enum to store the ip2c status
24, May 2008
Located & Fixed an IP2C related bug when merging to new version
Adjust RedesignedClientDetailDlg window to fit randQueue score display
25, May 2008
Fixed a bug of choose upload client algorithm which causes client that been
chosen & marked as AddNextConnect won't get it's upload after it turns
out to be a highID eventually
Note: it's a randQueue related bug, rare
26, May 2008
Discarded RedesignedClientDetailDlg due to heavy resource (GDI handle) leak
27, May 2008
Fixed: m_randShare not initialized which may cause unpredictable choose algorithm problem
28, May 2008
Use client details dlg by LoLo (previous series of CN version) with Protocol Ext. showed
and minor fixes
29, May 2008
Added Don't Remove Static Servers
Tagged as: Enig123::DontRemoveStaticServers
30, May 2008
Added Anti-XS-Exploit (Xman)
Keyword: Anti-XS-Exploit
Added CheckUDPFileReask from X-Ray mod
Tagged as: Enig123::CheckUDPFileReask
Changed code in: updownclient.h BaseClient.cpp ClientUDPSocket.cpp UploadClient.cpp
Added Detect Mod/Nick changer (from X-Ray mod with some modifications by Enig123)
Tagged as: Enig123::Detect Mod/Nick changer
4, Jun. 2008
Added Xman don't continue sending after banning
Spike2::Small Patch [eMule+]
Tagged as: Enig123::Xman don't continue sending after banning
Enig123::Spike2::Small Patch [eMule+]
Changed code in: ListenSocket.cpp
5, Jun. 2008
Added emcrypt detection for antileecher
Changed code in: BaseClient.cpp
7, Jun. 2008
Added Morph Made download overhead optional
Tagged as: Enig123::Made download overhead optional
Changed code in: Preferences.h Preferences.cpp resource.h emule.rc PPgTweaks.h PPgTweaks.cpp
UploadBandwidthThrottler.cpp
9, Jun. 2008
Added "X-Ray :: LoopImprovement" @ CListenSocket::Process()
Added "X-Ray :: Optimizations" @ CListenSocket::RemoveSocket(CClientReqSocket* todel)
Added "X-Ray :: FiXeS :: ProperCode :: Start :: Maella" @ CClientReqSocket::~CClientReqSocket()
Changed code in: ListenSocket.cpp
Added "X-Ray :: BetterClientAttaching"
Changed code in: ClientList.h ClientList.cpp ListenSocket.cpp
10, Jun. 2008
Added "X-Ray :: FiXeS :: Memleak :: Start :: WiZaRd" @ CWebServer::ProcessURL(ThreadData Data)
Changed code in: WebServer.cpp
Added "X-Ray :: FiXeS :: Bugfix :: Start :: WiZaRd" @ CUpDownClient::DbgGetFullClientSoftVer() const
Changed code in: BaseClient.cpp
Added "X-Ray :: FiXeS :: Codefix :: Start :: ilmira" @ CPreferences::Init()
Changed code in: Preferences.cpp
Added Enig123::correct handle calling of the "CFile" static functions @ CPreferences::LoadStats
Enig123::correct handle calling of the "CFile" static functions
Changed code in: Preferences.cpp
Added "X-Ray :: FiXeS :: Bugfix :: Start :: SiRoB" @ CUDPSocket::OnSend
Changed code in: UDPSocket.cpp
Added Enig123's half open speed control
Changed code in: ListenSocket.cpp
11, Jun. 2008
Added HalfOpenConn control check in upload queue (try not to exceed max half open conns when open new upload slot)
12, Jun. 2008
Revised "Optimization requpfile" implementation
14, Jun. 2008
Added "WiZaRd::Optimization - Prevented answering a banned client" while processing OP_HELLO
Note: can save some memory by not keep the CUpdownClient instance of banned client
code slightly changed to prevent log spamming
Changed code in: ListenSocket.cpp
20, Jun. 2008
New Implementation of getChooseRandom with no restriction of input range number (uint64)
Tagged as: Enig123::new implementation of getChooseRandom
Changed code in: UploadQueue.cpp
23, Jun. 2008
Code cleanup: find and strip residual PeerCache related code
Tagged as: Enig123::Strip PeerCache code
Changed code in: updownclient.h("// Download from URL" part) BaseClient.cpp
24, Jun. 2008
fix by Avi-3k - Sort Issues In Download List
from
http://forum.emule-project.net/index.php?showtopic=137245Tagged as: Enig123::Avi-3k - fix Sort Issues In Download List
Changed code in: DownloadListCtrl.cpp
8, Jul. 2008
Added Show my own userhash
Keywords: 增加userHash的显示, ACAT
Changed code in: ServerWnd.cpp
Added Friendlinks
Changed code in: ChatWnd.h ChatWnd.cpp ED2KLink.h ED2KLink.cpp eMule.h eMule.cpp eMuleDlg.cpp
eMule.rc FriendList.h FriendList.cpp FriendListCtrl.h FriendListCtrl.cpp
MenuCmds.h resource.h
23, Jul. 2008
Added improved clients.met handle - backup & recovery
Tagged as: //Enig123::improved clients.met handle
Changed code in: ClientCredits.cpp
27, Jul. 2008
Analyse:
Goal: Refresh RandCS after finishing uploading
Upload Start Time: m_dwUploadTime
Wait Start Time: GetWaitStartTime()
define
Upload End Time: m_dwUploadEndTime
client that finish uploading is A
for Client in WaitingQueue B
上传结束时B的等待时间:A.m_dwUploadEndTime - B.GetWaitStartTime()
A上传所用时间:A.m_dwUploadEndTime - A.m_dwUploadTime
若 B上传结束时的等待时间 >= A上传所用时间 则取得全份的RandCS
否则,仅取得
(A.m_dwUploadEndTime - B.GetWaitStartTime())/(A.m_dwUploadEndTime - A.m_dwUploadTime)
的部分RandCS
for client in UploadingQueue C
if (C.m_dwUploadTime > A.m_dwUploadTime)
给予补偿,补偿值为
(C.m_dwUploadTime - A.m_dwUploadTime)/(A.m_dwUploadEndTime - A.m_dwUploadTime)
否则不给予补偿
对于A本身,应该获得全份额RandCS补偿
已知误差:对于上传完成比较快的clients,会等不到先获得上传但完成比较慢的上传客户端的补偿,但此误差影响有限
CUploadQueue::AddUpNextClient() 为上传队列必经入口
CUploadQueue::RemoveFromUploadQueue() 为上传队列必经出口
1-4, Aug. 2008
Implement more accurate randCS redistribution routine
8, Aug. 2008
improvement about "improvements of CTag class in packet.h/cpp" by Avi-3k
Tagged as: Avi3k: improve code
Changed Code in: packets.h packets.cpp AbstractFile.h AbstractFile.cpp SearchFile.cpp
minor code improvements in SafeFile.cpp by Avi-3k
Tagged as: Avi3k: improve code
Changed Code in: SafeFile.cpp
a bug fix in otherfunctions.cpp in StringLimit() by Avi-3k
Changed code in: otherfunctions.cpp
TitleMenu.h TitleMenu.cpp replaced by Avi-3k's improved one
minor improvement in CPreferences::CanFSHandleLargeFiles()
Tagged as: Avi3k: improve code
Changed code in: Preferences.cpp
18 Aug. 2008
Fix a crash bug caused by ip2c code
20 Aug. 2008
Minor change: locate Download.txt file in the config directory
Note: this change will be in the next official release
Changed code in: DownloadQueue.cpp
25 Aug. 2008
Fix: Stop Rehashing Of Files With Foreign-language Name
Ref:
http://forum.emule-project.net/index.php?showtopic=138509Tagged as: //Enig123::saving all text tags as Unicode in UTF-8 by Borschtsch
Changed code in: StringConversion.h packets.h packets.cpp Friend.cpp KnownFile.cpp PartFile.cpp ServerList.cpp
SafeFile.cpp
31 Aug. 2008
Fix: fix a minor bug in PartFile.cpp by fox88
Ref:
http://forum.emule-project.net/index.php?showtopic=138844Keywords: uint64 uGapSize = cur_gap->end - cur_gap->start;
Changed code in: PartFile.cpp
1 Sep. 2008
Drop the following features completely:
Enig123::Made download overhead optional
Enig123::MORPH count tcp overhead from download
Strip unused codes
Keywords: m_numberOfSentBytesControlPacket GetSentBytesControlPacketSinceLastCallAndReset()
Changed code in: EMSocket.h EMSocket.cpp
2008-9-2 15:00:27: Removing client from upload list: CUpDownClient::Disconnected: Connectiontry Timeout Client: 117.78.112.104 '[CHN][VeryCD]yourname' (eMule v0.48a [VeryCD 080828],None/Connecting/None) Transferred: 45 secs SessionUp: 0 Bytes QueueSessionPayload: 0 Bytes In buffer: 0 Bytes Req blocks: 0 File: xxxxxx.rmvb
5 Sep. 2008
Splitter Invalidate, Repaint Splitter (ServerWnd) by moloko+
Ref:
http://forum.emule-project.net/index.php?showtopic=138974Tagged as: Enig123::Ref:
http://forum.emule-project.net/index.php?showtopic=138974Keywords: CServerWnd::ReattachAnchors()
Changed code in: ServerWnd.cpp
Added Vagaa detection code
Keywords: Vagaa
Changed code in: BaseClient.cpp
8 Sep. 2008
Upload Choose Algorithm change - give pending client score proportional to the actual upload amount that targetclient get
Tagged as: give pending client score proportional to the actual upload amount that targetclient get
Changed code in: UploadQueue.cpp
9 Sep. 2008
Put "community userhash ban" function from main program to dlp.dll
Changed code in: BaseClient.cpp
Upgraded codes of dlp.dll project
Added UDPReaskSecurityCheck (originally from NetFinity)
Tagged as: X-Ray :: UDPReaskSecurityCheck
Changed code in: DownloadClient.cpp
Comment out debug log line to prevent spam for release
Tagged as: Enig123::prevent debug log line spam for release
Changed code in: ClientUDPSocket.cpp
Also I should study these:
Nodes.dat Is Saved Only At App Close
http://forum.emule-project.net/index.php?showtopic=129299Missing Code In Listensocket.cpp?, Missing reaction to OP_REQUESTFILENAME
http://forum.emule-project.net/index.php?showtopic=121077Crash In Cemsocket
http://forum.emule-project.net/index.php?showtopic=95033http://forum.emule-project.net/index.php?showtopic=11058410 Sep. 2008
Added File Faker check
Tagged as: Enig123::File Faker check by JvA from X-Ray mod
Changed code in: updownclient.h UploadClient.cpp DownloadClient.cpp ListenSocket.cpp UploadQueue.cpp BaseClient.cpp
Dropped Eventually! seems no use at all
Code cleanups
Changed code in: UploadQueue.cpp
SR13-Import-Parts code review
idea & original implementation by roversr13
last version updated by roversr13:
Sr13-importparts-003 (45b Based), Last Updated: 2005/04/07
http://forum.emule-project.net/index.php?showtopic=64275latest revised version from MorphXT
Tag keyword: Import Part
Added Files: SR13-ImportParts.h SR13-ImportParts.cpp
Changed Files: CorruptionBlackBox.cpp DownloadListCtrl.cpp eMule.rc eMuleDlg.h eMuleDlg.cpp KnownFile.h PartFile.h PartFile.cpp SharedFileList.h SharedFileList.cpp
11 Sep. 2008
vagaa detection to community hardban
display vagaa client via NickName (test stage only)
Let's see how vagaa behaves like. Is it deserve softban?
12 Sep. 2008
Added SR13 Import Parts from MorphXT code
CN_FEATURE: CN_FEATURE_SR13_IMPORT_PARTS
Tagged as: Enig123::SR13 Import Parts
Changed code in: CN_Features.h CorruptionBlackBox.cpp DownloadListCtrl.cpp eMule.rc lang/zh_CN.rc eMuleDlg.h eMuleDlg.cpp KnownFile.h PartFile.h PartFile.cpp SharedFileList.h SharedFileList.cpp resource.h TitleMenu.h TitleMenu.cpp
Simplification & Optimization of randQueue implementation
Really a lot of changes
Changed code in: updownclient.h UploadClient.cpp BaseClient.cpp UploadQueue.h UploadQueue.cpp QueueListCtrl.cpp
13 Sep. 2008
Added Minor Bugfix For Filtertext On Language Change by WiZaRd
Ref:
http://forum.emule-project.net/index.php?showtopic=139130Tagged as: Enig123::Minor Bugfix For Filtertext On Language Change (WiZaRd)
Changed code in: SharedFilesWnd.h SharedFilesWnd.cpp SearchResultsWnd.h SearchResultsWnd.cpp
15-16 Sep. 2008
Solve some CN_zh lang problems
17 Sep. 2008
Minor optimizations and adjustments
18 Sep. 2008
Added Xman skip High-CPU-Load with minor bugfix
Tagged as: Enig123::Xman skip High-CPU-Load (minor fix applied)
Changed code in: UploadQueue.cpp
more code cleanups
20 Sep. 2008
always transfer full chunks
Tagged as: Enig123::always transfer full chunks when using random upload choose
Changed code in: UploadQueue.h UploadQueue.cpp
21 Sep. 2008
morph extra suprious verbose tracking - tracking bad request ban
Tagged as: Enig123::morph extra suprious verbose tracking
Changed code in: UploadClient.cpp ClientList.cpp
Dropped!! no need to
Added Improved Upload Caching
Note: ACAT SpeedMeasurer for uploading slot now uses 15 sec window to calculate
Keywords: IMPROVED_UPLOAD_CACHING
Tagged as: Enig123::Improved Upload Caching by WiZaRd
Changed code in: UploadClient.cpp
Analyze the following logs - should we ban it?:
2008-9-21 15:21:34: Error: Invalid or corrupted packet received - while processing eDonkey packet: opcode=OP_HELLO size=117; IP=59.115.157.24
2008-9-21 15:27:50: Error: Invalid or corrupted packet received - while processing eDonkey packet: opcode=OP_HELLO size=117; IP=59.115.155.51
2008-9-21 15:46:30: Unknown eMule Protocol Opcode: 0xf8, Size=22, Data=[57 63 d1 7f a8 5f 51 8e 40 82 43 41 38 91 09 7b 7b 70 d3 99 ce 1b]; Client=58.49.236.25 '[CHN][VeryCD]gump9' (eMule v0.48a [VeryCD 080828],Downloading/None/None)
2008-9-21 16:14:58: Ignored DirectCallback Request because this IP (123.194.237.124) has sent too many request within a short time
22 Sep. 2008
Change Improved Upload Caching to NetFinity's way
Keywords: IMPROVED_UPLOAD_CACHING
Changed code in: UploadClient.cpp
Added Advanced Download Throttling
Keywords: CN_FEATURE_ADVANCED_DOWNLOAD_THROTTLING
Changed code in: CN_Features.h EMSocket.h EMSocket.cpp DownloadQueue.cpp PartFile.cpp
23 Sep. 2008
Improved NetFinity's upload caching - by Enig123
Note: use short window speedMeasurer (5 sec time window) for lowwater value
Keywords: IMPROVED_UPLOAD_CACHING
Changed code in: UploadClient.cpp
http://forum.emule-project.net/index.php?showtopic=103772netfinity
Apr 6 2006, 01:16 AM
In order to reduce disk acceses with high speed connections, you have to
start buffering just before the buffers runs dry (the last cached block
has begun sending) and then cache as many blocks as possible. It is the
difference between the low and high-watermark of the buffer that keeps
down the disk accesses, not the size of the buffer itself.
考察
GetSessionUp()
GetQueueSessionPayloadUp() - this is what timeover used with
的区别
25-27 Sep. 2008
Test for upload capacity when SO_SNDBUF changed in EMSocket.cpp
Revisit and clean code in EMSocket.cpp
27 Sep. 2008
Added check if the file is known/shared by Avi-3k
Ref:
http://forum.emule-project.net/index.php?showtopic=138191Tagged as: Enig123::check if the file is known/shared - Avi-3k
Changed code in: DownloadQueue.cpp
Change some uint64 variables to uint32 in EMSocket
Changed code in: EMSocket.h EMSocket.cpp UploadClient.cpp
29 Sep. 2008
Added CriticalPacketFix from X-Ray
Tagged as: Enig123::CriticalPacketFix
Changed code in: EMSocket.cpp packets.h packets.cpp
3 Oct. 2008
内存泄漏问题?
http://www.verycd.com/groups/eMuleDev/373758.topicCSearchList::ProcessSearchAnswer @ SearchList.cpp
Partially added Maella - Upload Stop Reason
Note: only affect randCS redistribution when the remote client cancelled or finished
Tagged as: Enig123::Maella - Upload Stop Reason
Changed code in: ClientStateDefs.h UploadQueue.h UploadQueue.cpp ClientDetailDlg.cpp ListenSocket.cpp UploadClient.cpp
4 Oct. 2008
Added Xman client percentage
Tagged as: Enig123::Xman client percentage
Changed code in: updownclient.h BaseClient.cpp UploadClient.cpp DownloadClient.cpp MuleListCtrl.h DownloadClientsCtrl.cpp DownloadListCtrl.cpp QueueListCtrl.cpp UploadListCtrl.cpp
5 Oct. 2008
Added optimization within UploadBandwidthThrottler.cpp
Note: substitute float poit number calculations by equivalent interger one to reduce cpu usage
mldonkey fareness discussion:
Mldonkey-spam, What's that?!
http://forum.emule-project.net/index.php?showtopic=110405TODO
some more research on lupzz's patch
Upload Throttling Performance Improvements, support for high speeds on single slot
http://forum.emule-project.net/index.php?showtopic=97981ed2k://|file|eMule_0.49b_CN-7_Build_191.rar|6579991|C472F8745BF50ECB49F5795F2D67613A|h=TFUHAHKVK7ZAT3WCZCFNOBGRGAGYYGSB|/